資料庫學習(三)基本查詢

小師兄.發表於2019-01-22

基本查詢

基本語法形式

select [all | distinct] 欄位或表示式列表 【from子句】【where子句】【group by子句】【having】

【order by子句】 【limit子句】

欄位或表示式列表

欄位必然是來源於“資料來源”(表);

每個欄位或表示式,都可以對其“取別名”: XX as 別名

from子句:就是資料來源;

where子句:是對資料來源的每一行資料進行的某種條件篩選;

is運算子:空值和布林值的判斷

is null, is not null, is true, is false

between運算子:範圍判斷

XX between 值1 and 值2;

in運算子:給定確定資料的範圍判斷

XX in (值1,值2, .... )

like運算子:對字串進行模糊查詢

XX like ‘要查詢的字元’

要查詢的字元 要想發揮作用,就必須依賴於以下兩個特殊字元:

% :代表任意個數的任意字元

_ :代表一個任意字元

group by 子句:分組

什麼叫做分組?

就是對若干條“原始資料行”,以某種標準(欄位值),來進行“分類”。則分完了之後,自熱,就會構成以該欄位值為特徵的“小組”,每個小組一定是具有相同的該欄位的值;

但,注意:

分組之後,只有組資訊,而且,每一組,在結果集中,就是一行;

具體來說,有如下資訊可用(就是出現在select的輸出部分):

1,分組依據欄位本身;

2,每一組的“數量資訊”:用count(*)來取得;

3,數值型欄位的以下幾個“統計值”(聚合計算值):

max(XX), min(XX), avg(XX), sum(XX);

having子句

類似where的作用和使用語法,但其只針對groupby分組之後的“組資訊”進行篩選;

order by 子句:對前述資料以某種指定的方式進行排序(ASC,DESC);

limit子句

對前述資料,以指定的行號開始取出多少行;行號是從0開始算起的連續的整數數字,跟資料本身中的欄位值沒有關係。

對整個select語句的一些總結

相關文章