1. 程式人生 > >sql 常用語句和關鍵詞

sql 常用語句和關鍵詞

1.建立(注:以下使用的’[]’字元表示可選項)

資料庫:
create database 資料庫名 [ character set utf8 collate utf8_general_ci ] //字元編碼設定
表:
create table 表名(列名1 資料型別 [約束] ,[列2]資料型別 [約束],…)//至少一個列
列屬性:
1).可以在建立表時新增列屬性;
2).alter table 表名 add 列名 資料型別。
列值:
1).insert into 表名[(列名1,列名2,…)] values(值1,值2,…);
2).update 表名 set 列名1=值1,列名2=值3,… [where 條件]。
索引:
1) .可以在建立表時,為某個 屬性或列新增索引,create table 表名(列名1 資料型別 [約束] ,index 索引名1(列名1) ,…);
2).create [unique] index 索引名 on 表名(列名)。

2.刪除

資料庫:
drop database 資料庫名
表:
drop table 表名
列/屬性:
alter table 表名 drop 列名
列值:
1)delete from 表名 [條件];
2)truncate table 表名 (注:delete、truncate、fdrop三者的差異,可參見部落格: http://blog.csdn.net/ws0513/article/details/49980547)。
索引:
alter table 表名 drop index(索引名)
儲存過程:
drop procedure 儲存名

3.查詢

資料庫:
show databases(注: 展示資料庫中所有的資料庫名)
表:
show tables
列/屬性:
select */列名 from 表名 [條件]
查詢索引:
show index from 表名

4.修改

屬性值:
update 表名 set 列名=值 [where 條件]
字元編碼:
alter table my charater set編碼 –如:utf8
屬性資料型別:
alter table my modify user_name資料型別 –如:varchar(100),int,decimal,datetime等
屬性名:
alter table my change原屬性名 新屬性名

5.關鍵字或方法

1). where 條件(如果建立了group by 不能使用where,只能使用having 條件)
2).having 條件(和group by 配合使用)
3). 列名 in(值1,值2,…)
4). group by 列名
5). between 值1 and 值2…
6). like ‘[%][%]’,其中%可以寫為’_’下劃線表示滿足一個條件
7). order by [desc]/[asc]
8). top 數字 (oracle中沒用top關鍵字用rownum替代)
9). is null 或 is not null (注:在sql語句中只能使用該語句判斷某個值是否為null值,不能使用=null或!=null)
10). unique 唯一性
11). primary key 主鍵約束
12). foreign key 外來鍵約束
13). ifnull(exp1,exp2) 如果exp1不為null,結果為exp2,否則結果為exp1
14). 聚合函式:count(*),sum(屬性名),avg(屬性名),max(屬性名),min(屬性名)
15). and ,or 與或
16). as 為表,結果或屬性取別名
17). limit startnum,countLength 從起始數startnum開始到計數countLength 長度
18).FOUND_ROWS()方法 – (注:使用前需要先執行操作:select SQL_CALC_FOUND_ROWS

from 表名,可以用來自動獲取記錄總的查詢行數;)*