一路走來,是不是覺著挺快的,已經到了MySQL漂流記(七)了>>>?
1)簡單介紹Select
select?selection_list??//選擇哪些列?? from?table_list??//從何處選擇行?? where?primary_constraint??//行必須滿足什么條件?? group?by?grouping_columns?//?怎樣對結果分組?? having?secondary_constraint??//行必須滿足的第二條件?? order?by?sorting_columns?//怎樣對結果排序?? limit?count??//結果限定
注意:
所有使用的關鍵詞必須精確地以上面的順序給出。例如,一個having子句必 須跟在group by子句之后和order by子句之前;
上述語法中除了select關鍵字之外,其他每樣東西都是可選的。有些數據庫需要用from關鍵字,但是mysql允許對表達式求值而不引用任何表
2)普通查詢
select?*?from?table01;//查詢當前表里所有的列的數據? select?name,age?from?table01;//查詢當前表里name列和age列的所有數據? select?(2+3)/2.5;//表達式求值而不引用任何表
3)條件查詢
select?*?from?table_new?where?age>20;
4)排序查詢
關鍵字:order by–該子句對查詢返回的結果按一列或多列排序
asc表示升序,為默認值,desc表示降序
需要注意的是:
desc/asc關鍵詞僅適用于緊跟在它之前的列名字
Case: select * from table_new order by age desc;
5)查詢分組與行計數
group by從句根據所給的列名返回分組的查詢結果,可用于查詢具有相同值的列,如果除了計數還返回一個列的值,那么需要使用group by 語句,否則無法計算記錄,產生錯誤;
Case: select name,dizhi,count(*) from table_new group by name,dizhi;
如果想查詢一個表里到底有多少條記錄?
可以直接使用下面的語句:
語法:
select?count(*)?from?表名;? Case:??select?count(*)?from?table_new;
6)查詢多個表
現在需要從表table_new和另一個表格table_new2中查詢到name相同的字段,打印出來;
Case: select t1.name,t2.name from table_new as t1,table_new2 as t2 where t1.name=t2.name;
說明:as表示為這個表取別名。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END