mysql多條件查詢(xún)語(yǔ)句,SQL聯(lián)合查詢(xún)?
CROSS JOIN交叉連接。是一種沒(méi)有任何限制條件的連接方式,結(jié)果為笛卡爾積。SQL語(yǔ)法如下:
上面SQL等同于: INNER JOIN(默認(rèn)是JOIN)內(nèi)連接。在表中存在至少一個(gè)匹配時(shí)返回行,可以理解為兩張表中同時(shí)符合某種條件的行的組合。內(nèi)連接還分為等值連接、不等連接和自連接。SQL語(yǔ)法如下: 等值連接:使用“=”作為連接條件不等連接:沒(méi)有使用“=”作為連接條件 自連接:自己連接自己,即連接的表只有一張 LEFT JOIN左連接。外連接的一種,從左表(table1)返回所有的行,即使右表(table2)中沒(méi)有匹配,如果右表中沒(méi)有匹配,則結(jié)果為 NULL。SQL語(yǔ)法如下: RIGHT JOIN右連接。外連接的一種,從右表(table2)返回所有的行,即使左表(table1)中沒(méi)有匹配,如果左表中沒(méi)有匹配,則結(jié)果為 NULL。SQL語(yǔ)法如下: FULL JOIN全連接。外連接的一種,只要左表(table1)和右表(table2)其中一個(gè)表中存在匹配,則返回行,集合了 LEFT JOIN 和 RIGHT JOIN 的結(jié)果。SQL語(yǔ)法如下: 其中,MySQL不支持FULL JOIN,可使用LEFT JOIN 、UNION、RIGHT JOIN 結(jié)合實(shí)現(xiàn)FULL JOIN的查詢(xún),示例: UNION聯(lián)合查詢(xún)(去重)。用于合并兩個(gè)或多個(gè) SELECT 語(yǔ)句的結(jié)果集。UNION 內(nèi)部的每個(gè) SELECT 語(yǔ)句必須擁有相同數(shù)量和相同順序的列,列也必須擁有相似的數(shù)據(jù)類(lèi)型。SQL語(yǔ)法如下: 注:UNION查詢(xún)的結(jié)果中,不存在重復(fù)的值。 UNION ALL聯(lián)合查詢(xún)(不去重)。用于合并兩個(gè)或多個(gè) SELECT 語(yǔ)句的結(jié)果集。UNION 結(jié)果集中的列名總是等于 UNION 中第一個(gè) SELECT 語(yǔ)句中的列名。SQL語(yǔ)法如下: 或者: 注: UNION ALL查詢(xún)的結(jié)果中,允許存在重復(fù)的值。使用UNION或者UNION ALL時(shí),只能在最后一個(gè)SELECT語(yǔ)句使用ORDER BY命令。