ps:sql對大小寫不敏感
一些重要的SQL命令
- select-從數(shù)據(jù)庫中提取數(shù)據(jù)
- update-更新數(shù)據(jù)庫中的數(shù)據(jù)
- delete-從數(shù)據(jù)庫中刪除數(shù)據(jù)
- insert into-想數(shù)據(jù)庫中插入新數(shù)據(jù)
- create database-創(chuàng)建新數(shù)據(jù)庫
- alter database-修改數(shù)據(jù)庫
- create table-創(chuàng)建新表
- alter table-改變數(shù)據(jù)庫表
- drop table-刪除表
- create index-創(chuàng)建索引
- drop index-刪除索引
SQL SELECT
select column_name,column_name from table_name;
&
select * form table_name;
SQL DISTINCT
在表中有可能會包含多個重復(fù)值,有時希望僅僅列出不同(distinct)的值亿絮。
DISTINCT關(guān)鍵詞用于返回唯一不同的值涣澡。
select distinct column_name,column_name from table_name;
ps:只能先寫distinct 在寫列名螟炫,不能先寫列名,在寫distinct傻盟,如
select name,distinct date from user;
是錯誤的;
SQL WHERE
select column_name,column_name from table_name where column_name operator value;
文本字段VS 數(shù)值字段
SQL使用單引號來環(huán)繞文本值艰管,如
select * from websites where country='CN'
但是如果是數(shù)值字段度秘,請不要使用引號趋急。
where子句中的運算符
運算符 | 描述 |
---|---|
= | 等于 |
<> | 不等于 ps:在一些sql版本中喝峦,該操作符可能會是!= |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
between | 在某個范圍 |
like | 搜索某種模式(通配符) |
in | 指定針對某個列的多個可能值 |
SQL AND&OR
如果第一個條件和第二個條件都成立,and運算符顯示一條記錄
如果第一個或者第二個條件都成立呜达,or運算符顯示一條記錄
如
and
select * from websites where country = 'CN'
and alexa>50;
////////
or
select * from websites where country='USA'
or contry='CN';
結(jié)合 and&or
select * from websites
where Alexa > 5
and (country='CN' or country='USA');
SQL ORDER BY
order by 關(guān)鍵字用于對結(jié)果集按照一個列或者多個列進(jìn)行排序谣蠢。
order by 關(guān)鍵字默認(rèn)按照升序懟記錄進(jìn)行排序。如果需要按照降序?qū)τ涗涍M(jìn)行排序查近,可以用DESC關(guān)鍵字眉踱。
select column_name,column_name
from table_name
order by column_name,column_name ASC|DESC;
order by多列
select * from websites order by country,alexa;
先按照 country排列,如果country 相同 那么按照alexa排列霜威;
SQL INSERT INTO
insert into 用于向表中插入新紀(jì)錄谈喳。
insert into 有兩種編寫形式
第一種無需指定要插入數(shù)據(jù)的列名,只需要提供被插入的值即可:
insert into table_name
values (value1,value2,value3,...);
第二種形式需要指定列名以及被插入的值:
insert into table_name(column1,column2,column3,...)
values (value1,value2,value3,....);
SQL UPDATE
update用于更新表中存在的記錄戈泼。
update table_name
set column1=value1,column2=value2,...
where some_column=some_value;
ps:如果省略了where語句婿禽,那么所有的記錄都將更新。慎重
SQL DELETE
delete語句用于刪除表中的行大猛。
delete from table_name
where some_column = some_value;
ps:省略了where子句扭倾,所有的記錄都將被刪除!
刪除所有數(shù)據(jù)
可以在不刪除表的情況下挽绩,刪除表中所有的行膛壹。意味著表結(jié)構(gòu)、屬性唉堪、索引將保持不變恢筝;
delete from table_name;
or
delete * from table_name;