MySQL中聯(lián)合查詢指的是將兩個(gè)或多個(gè)SELECT語句的結(jié)果集合并成一個(gè)結(jié)果集的操作。
聯(lián)合查詢的語法如下:
SELECT column_name(s) FROM table_name1 UNION [ALL | DISTINCT] SELECT column_name(s) FROM table_name2;
其中,table_name1和table_name2是要查詢的表名,column_name(s)是要查詢的列名,使用UNION關(guān)鍵字將兩個(gè)SELECT語句的結(jié)果集合并,ALL和DISTINCT是用來指定是否去除重復(fù)行。
舉個(gè)例子,假設(shè)我們有兩張表student和teacher:
student表: id name age 1 Alice 18 2 Bob 20 3 Charlie 19 teacher表: id name subject 1 David Math 2 Emma English 3 Frank Science
現(xiàn)在我們想要查詢學(xué)生和老師的姓名,可以使用以下聯(lián)合查詢語句:
SELECT name FROM student UNION SELECT name FROM teacher;
其結(jié)果為:
name ----- Alice Bob Charlie David Emma Frank
可以看到,兩個(gè)表的結(jié)果集被合并成了一個(gè)結(jié)果集,并去除了重復(fù)行。