常用的sql語句總結
阿新 • • 發佈:2018-05-21
sql語句常用的sql語句總結
insert常用的語句
insert 語法 insert into <表名> ( <字段名1>,..,<字段名n > ) values ( 值1 ), ……,( 值n ); --註意: 1、後面的值1對應的是字段名1的值,依此類推。 2、沒有指定字段時,表示對應每個字段都會插入數據 3、如果值是字符串的話要用 ‘ 單引號引起了 僅在name下插入一個名字 mysql> insert into xixi(name) values(‘xiaoer‘); 插入兩行數據 mysql> insert into xixi values(2,‘zhangsan‘),(3,‘lisi‘); --表示在xixi表中對應的2字段插入zhangsan 和3字段中插入了lisi 在表中的多個字段插入多條數據 mysql> insert into xixi(name,age) values(‘zhangsan‘,28),(‘lisi‘,29); --在xixi表中插入name值為zhangsan,age字段值為28和name值為lisi,age字段值為29 查看表內容 mysql> select * from xixi; 使用 insert 復制表結構及內容,產生附表。 mysql> create xixi2 test2 like xixi; --創建新表xixi2復制xixi表的結構 mysql> insert into xixi2 select * from xixi; --把xixi表的內容插入新的xixi2表中
update常用的語句
update更改數據庫
為安全一定要加上where條件更新表內容
將字段中的lisi改為haha
mysql> update xixi set name=‘haha‘ where name=‘lisi‘;
將xixi表中字段id=5的行把name值改為maliu
update xixi set name=maliu where id=5;
一次修改多個值
mysql>update xxi set name-maliu,age=27 where id=5
更改後查看
select * from xixi;
delete常用的語句
delete from xixi; #邏輯刪除,一行一行刪。 truncate table xixi; #物理刪除,效率高。 根據指定的條件刪除語句 mysql> delete from xixi where name=‘zhangsan‘; 如:從表中找出age大於50的進行降序排列,刪除第一個。 delete from xixi where age>50 order by age desc limit 1; 刪除之後查看下 mysql> select * from test2; 在mysql命令加上選項-U後使用update與delete命令的時候不加where 條件不會執行。
select常用語句
命令語法 select 字段1,字段2,... from 表名 [ where 表達式 and 表達式 ] --其中,select、from、where是不能隨便改的,是關鍵字,支持大小寫。 查看表中的所有信息 select * from xixi; 查看表中的id和name select id,name from xixi; 查看id等於2 的信息 select id,name from xixi where id=2; 查看名字是zhangsan的記錄 select id,name from xixi where name=‘zhangsan‘; 查看id大於2的記錄 select id,name from xixi where id>2; 查看id大於2 並且 小於4的記錄 select id,name from xixi where id>2 and id<4; 查看表中所有id大於等於5並且小於等於10的數據 select * from xixi where id >= 5 and <= 10; 查看表中所有id等於5或者等於10的數據 select * from xixi where id = 5 or id = 1 查看id不等於5和10之間的數據 select * from xixi where id not between 5 and 10 select * from xixi where id < 5 or id > 10; like結合通配符使用查詢 % 表示任意長度的任意字符, _ 表示任意單個字符 ,還支持正則表達式 select * from xixi where name like ‘a%‘; --查看name字段中所有以a開頭的數據 使用in關鍵字指定列表如: 找出id等於5、6、7中的任意一行的所有數據 select * from xixi where id in (5,6,7); select * from xixi where id not in (5,6,7); --not in 也就是取反的意思 limit指定行 select id,name from xixi limit 2; --顯示前兩行 select id,name from xixi limit 2,3; --顯示第2行後的三行 asc正向排序查看(不加默認就是正向排序) select id,name from xixi order by id asc; --查看id和name字段以id字段進行正向排序 desc反向排序查看 select id,name from xixi order by id desc; --查看id和name字段並以id字段進行反向排序 select * from xixi order by id desc; --查看所有並以id字段進行反向排序顯示 distinct去重 select distinct age from xixi; --xixi表的age字段中去除重復的行顯示
select分組查詢
一些聚合函數的常用示例
group by 分組
count()統計指定列的數量
avg() 求指定列平均值
sum()求指定列的和
min()顯示指定列的最小值
max()顯示指定列的最大值
count()顯示指定列中非null值的個數
group_concat()分組顯示指定列的值
查詢students表中的以性別為分組,求出分組後的年齡之和
select gender,sum(age)from student group gender --gender性別 --age年齡
查詢student表中以classid分組,顯示平均值大於22的classid
select?classid,avg(age)?as?avgage?from?student?group?by?classid?having?avgage?>?22;
查詢student表中以性別字段gender分組,顯示各組中的年齡大於18的學員的年齡總和
select?sum(age)?from?students?where?age?>?19?group?by?gender;
常用的sql語句總結