SELECT語句的執(zhí)行的邏輯查詢處理步驟

SELECT語句的執(zhí)行的邏輯查詢處理步驟:


(8) SELECT (9)DISTINCT
(11)    <TOP_specification> <select_list>
(1)     FROM <left_table>
(3) <join_type> JOIN <right_table>
(2) ON <join_condition>
(4) WHERE <where_condition>
(5) GROUP BY <group_by_list>
(6) WITH {CUBE | ROLLUP}
(7) HAVING <having_condition>
(10)    ORDER BY <order_by_list>


注意:

  1. 如果最上層的列中包含匯總函數焊夸,則每left join 一次燃少,匯總的函數列會乘以2

  2. 多個連接查詢的時候住练,Group by 只能有一個(這個不是字面意思)


select sum(a.click) from a     #假設click為1交洗,則第一次leftjoin之后為1梧躺,第二次leftjoin后為2
left  join b 
on a.id = b.id
left join c  # group by a.id 不能寫在這里
on a.id = c.id
grouop by a.id

每個步驟產生一個虛擬表劣挫,該虛擬表被用作下一個步驟的輸入册养。只有最后一步生成的表返回給調用者。如
果沒有某一子句压固,則跳過相應的步驟球拦。

  1. FROM:對FROM子句中的前兩個表執(zhí)行笛卡爾積,生成虛擬表VT1帐我。

  2. ON:對VT1應用ON篩選器坎炼。只有那些使<join_condition>為真的行才被插入VT2。

  3. OUTER(JOIN):如果指定了OUTER JOIN拦键,保留表中未找到匹配的行將作為外部行添加到VT2谣光,生成VT3。如果FROM子句包含兩個以上的表芬为,則對上一個聯(lián)接生成的結果表和下一個表重復執(zhí)行步驟1到步驟3萄金,直到處理完所有的表為止蟀悦。

  4. 對VT3應用WHERE篩選器。只有使<where_condition>為TRUE的行才被插入VT4氧敢。

  5. GROUP BY:按GROUP BY 子句中的列列表對VT4中的行分組日戈,生成VT5。

  6. CUBEROLLUP:把超組插入VT5福稳,生成VT6涎拉。

  7. HAVING:對VT6應用HAVING篩選器。只有使<having_condition>為TRUE的組才會被插入VT7的圆。

  8. SELECT:處理SELECT列表鼓拧,產生VT8。

  9. DISTINCT:將重復的行從VT8中移除越妈,產生VT9季俩。

  10. ORDER BY:將VT9中的行按ORDER BY子句中的列列表排序,生成一個有表(VC10)梅掠。

  11. TOP:從VC10的開始處選擇指定數量或比例的行酌住,生成表VT11,并返回給調用者。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末阎抒,一起剝皮案震驚了整個濱河市酪我,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌且叁,老刑警劉巖都哭,帶你破解...
    沈念sama閱讀 216,919評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異逞带,居然都是意外死亡欺矫,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評論 3 392
  • 文/潘曉璐 我一進店門展氓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來穆趴,“玉大人,你說我怎么就攤上這事遇汞∥疵茫” “怎么了?”我有些...
    開封第一講書人閱讀 163,316評論 0 353
  • 文/不壞的土叔 我叫張陵空入,是天一觀的道長教寂。 經常有香客問我,道長执庐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,294評論 1 292
  • 正文 為了忘掉前任导梆,我火速辦了婚禮轨淌,結果婚禮上迂烁,老公的妹妹穿的比我還像新娘。我一直安慰自己递鹉,他們只是感情好盟步,可當我...
    茶點故事閱讀 67,318評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著躏结,像睡著了一般却盘。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上媳拴,一...
    開封第一講書人閱讀 51,245評論 1 299
  • 那天黄橘,我揣著相機與錄音,去河邊找鬼屈溉。 笑死塞关,一個胖子當著我的面吹牛,可吹牛的內容都是我干的子巾。 我是一名探鬼主播帆赢,決...
    沈念sama閱讀 40,120評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼线梗!你這毒婦竟也來了椰于?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,964評論 0 275
  • 序言:老撾萬榮一對情侶失蹤仪搔,失蹤者是張志新(化名)和其女友劉穎瘾婿,沒想到半個月后,有當地人在樹林里發(fā)現(xiàn)了一具尸體僻造,經...
    沈念sama閱讀 45,376評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡憋他,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,592評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了髓削。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片竹挡。...
    茶點故事閱讀 39,764評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖立膛,靈堂內的尸體忽然破棺而出揪罕,到底是詐尸還是另有隱情,我是刑警寧澤宝泵,帶...
    沈念sama閱讀 35,460評論 5 344
  • 正文 年R本政府宣布好啰,位于F島的核電站,受9級特大地震影響儿奶,放射性物質發(fā)生泄漏框往。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,070評論 3 327
  • 文/蒙蒙 一闯捎、第九天 我趴在偏房一處隱蔽的房頂上張望椰弊。 院中可真熱鬧许溅,春花似錦、人聲如沸秉版。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽清焕。三九已至并蝗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間秸妥,已是汗流浹背滚停。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留筛峭,地道東北人铐刘。 一個月前我還...
    沈念sama閱讀 47,819評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像影晓,于是被迫代替她去往敵國和親镰吵。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,665評論 2 354

推薦閱讀更多精彩內容