網際網路公司面試必問的mysql題目(上)
阿新 • • 發佈:2018-12-09
1、 FROM:對 FROM 子句中的前兩個表執行笛卡爾積(交叉聯接),生成虛擬表 VT1。2、 ON:對 VT1 應用 ON 篩選器,只有那些使為真才被插入到 TV2。3、 OUTER (JOIN):如果指定了 OUTER JOIN(相對於 CROSS JOIN 或 INNER JOIN),保留表中未找到匹配的行將作為外部行新增到 VT2,生成 TV3。如果 FROM 子句包含兩個以上的表,則對上一個聯接生成的結果表和下一個表重複執行步驟 1 到步驟 3,直到處理完所有的表位置。4、 WHERE:對 TV3 應用 WHERE 篩選器,只有使為 true 的行才插入 TV4。5、 GROUP BY:按 GROUP BY 子句中的列列表對 TV4 中的行進行分組,生成 TV5。6、 CUTE|ROLLUP:把超組插入 VT5,生成 VT6。7、 HAVING:對 VT6 應用 HAVING 篩選器,只有使為 true 的組插入到 VT7。8、 SELECT:處理 SELECT 列表,產生 VT8。9、 DISTINCT:將重複的行從 VT8 中刪除,產品 VT9。10、 ORDER BY:將 VT9 中的行按 ORDER BY 子句中的列列表順序,生成一個遊標(VC10)。11、 TOP:從 VC10 的開始處選擇指定數量或比例的行,生成表 TV11,並返回給呼叫者。