MySQL Union操作是在同一個(gè)查詢中合并多個(gè)Select語(yǔ)句的結(jié)果。同一張表可以通過Union操作用于合并多個(gè)數(shù)據(jù)集。這時(shí)候,我們需要進(jìn)行一些操作來確保我們獲取的數(shù)據(jù)是我們期望的。
以下是一個(gè)例子:我們有一個(gè)記錄員工薪資的表格,我們想要查找所有工資高于50000的員工。
SELECT * FROM employee WHERE salary >50000
上面的語(yǔ)句可以找到所有工資高于50000的員工,但是我們想要把這個(gè)查詢結(jié)果和工資低于50000的員工一起展現(xiàn)出來。我們可以使用Union操作:
SELECT * FROM employee WHERE salary >50000 UNION SELECT * FROM employee WHERE salary< 50000
上面的語(yǔ)句使用了Union操作,將兩個(gè)Select語(yǔ)句的結(jié)果合并了起來。注意,我們需要使用UNION來使操作成功執(zhí)行。這個(gè)語(yǔ)句將返回所有員工的記錄,不論他們的工資是多少。如果我們只想要返回不同的結(jié)果,我們可以使用UNION DISTINCT:
SELECT * FROM employee WHERE salary >50000 UNION DISTINCT SELECT * FROM employee WHERE salary< 50000
上面的語(yǔ)句將只返回不同的結(jié)果。這個(gè)操作會(huì)自動(dòng)去除兩個(gè)結(jié)果集中重復(fù)的行。
總結(jié)起來,Union操作可以在同一個(gè)查詢中合并多個(gè)Select語(yǔ)句的結(jié)果。同一張表可以通過Union操作用于合并多個(gè)數(shù)據(jù)集。為了確保操作的正確性,我們需要使用UNION或UNION DISTINCT關(guān)鍵字。