1. 程式人生 > >mysql 數據庫學習第二天

mysql 數據庫學習第二天

gen post desc mysql pos pan 包括 cal and

查詢數據(單表查詢)

查詢所有列 select * from 表名;

查詢指定列 select 字段,字段,字段 from 表名;

查詢時添加常量列 select ‘新字段‘ as ‘常量名‘ from 表名;

查詢時合並列 select (字段1+字段2)as ‘常量名‘ from 表名;註:合並的只能時相同類型的字段

查詢時去重復記錄 select distinct 字段 from 表名;

select distinct(字段)from 表名;

條件查詢

邏輯條件 and or

比較條件 > < >= <= <> between 數值1 and 數值2

判空條件 is null / is not null / =‘ ‘ / <>‘ ‘

如:查詢地址為空的學生(包括null和空字符串)

null vs 空字符串

null 表示沒有值

空字符串 表示有值!

如:判斷null

select * from 表名 where 字段 is null

模糊查詢 like

%:表示任意個字符

_: 表示一個字符

例如:查詢姓張的學生 select * from 表名 where like ‘張%’;

查詢姓李的 且名字是兩個字的 select * from 表名 where like ‘李_’;

聚合查詢 sum() avg() max() min() count()

select sum(score) as ‘score的總分‘ from 表名;

select avg(score) as ‘score的平均分‘ from 表名;

select max(score) as ‘score的最高分‘ from 表名;

select min(score) as ‘score的最低分‘ from 表名;

select count(*) from 表名; 查詢總數

註:count()函數統計的數量不包含null的數據

分頁查詢 limit 起始行,查詢幾行

總結的小規律:分頁查詢的數據的sql: select * from 表名 limit (當前頁-1)*每頁顯示多少條,每頁顯示多少條

如:第一頁 查詢第1,2條數據

select * from 表名 limit 0,2;

第二頁 查詢第3,4條數據

select * from 表名 limit 2,2;

查詢排序 (order by)

語法:order by 字段 asc/desc

asc: 順序,正序,遞增

desc: 倒序,逆序,遞減

分組查詢 (group by)

如:查詢男女的人數 (先分組,再統計人數)

select gender,count(* ) from student group by gender;

分組後篩選 (having)

如:查詢總人數大於3的性別 (先分組 再統計 最後加查詢條件 )

select gender,count(* ) from student group by gender having count(*)>3;

mysql 數據庫學習第二天