簡體   English   中英

此WHERE子句和此Join之間有什么區別?

[英]What's the difference between this WHERE clause and this Join?

這有什么區別:

SELECT * FROM table1, table2 WHERE table1.primary_id = table2.primary_id

和這個:

SELECT * FROM table1 FULL JOIN table2 ON table1.primary_id = table2.primary_id

第一個查詢是隱式的INNER JOIN ,您應該始終使用顯式語法。 在這種情況下,查詢將返回表1和表2中的記錄。 第二個查詢將返回兩個表的所有記錄,如果另一個不匹配,則顯示NULL

FULL JOIN關鍵字返回table1所有行,以及table2所有行。 如果有行table1沒有火柴table2 ,或是否有行table2沒有在比賽table1 ,這些行會被列在其中,充滿了nulls

第一個查詢將僅返回table1table2primaryId )匹配的結果。 它等效於INNER JOIN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM