mysql 心法口訣複習

開始打雞血了

  • 語法順序
select distinct 字段1,字段1,字段3 from 庫.表
where 條件 
group by 分組條件
having 過濾 
order by 排序字段1,排序字段2
limit n;

  • 執行順序
先找表(from) 
過濾數據(where)
分組(group by) [沒有group by 整體算作一組]
過濾 (having)
去重(distinct)
排序 (order by)
限制查詢數據條數(limit) 
  • group by 使用的聚合函數
max()  	最大

min() 	最小

count()	統計

avg() 	平均

sum() 	求和

group_concat() 分組後查看組內所有成員

select 分組字段,group_concat(表字段) from 表 group by 分組字段

  • 設置group by 的 global sql_mode爲嚴格分組模式
set global sql_mode="ONLY_FULL_GROUP_BY"; 

設置後 select 的字段只能取分組字段

select 分組字段 from table group by 分組字段

  • order by排序
order by默認爲升序(asc)排序   
   
降序排序(desc)

order by 字段1,字段2 

先按照字段1排序,字段1相同按照字段2排序

  • limit 限制查詢條數和分頁

【查詢 n 條  limit n】

	用法示例:查詢工資最高的員工信息
	
	select * from employ order by salary desc limit 1

【分頁 limit n,m】
	n--頁碼		m--每頁條數
	
	符合分頁的sql 格式爲:
	select * from table limit (n-1)*m,m 
	
	如每頁十條數據
	第一頁 select * from table limit 0,10
	第二頁 select * from table limit 10,10
	...
	...
	...
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章