我有以下問題:選擇返回同一行多次
在DB中,我有兩個表。第一個表中的一列中的值可以出現在第二個表中的兩個不同列中。
所以,配置如下:
TABLE_A:柱Print_group 表_B:列Print_digital和Print_offset
來自不同的行和表-A的Print_group列中的值可以出現在一行Table_B但在不同的列中。
我有以下查詢:
SELECT DISTINCT * FROM Table_A
INNER JOIN B ON (Table_A. Print_digital = Table_B.Print_group OR
Table_A.Print_offset = Table_B.Print_group)
的問題是,這個查詢從表-A兩次返回同一行。
我做錯了什麼?什麼是正確的查詢?
謝謝您的幫助
連接可以做到這一點。你可以展示示例數據嗎? –
如果您將表A連接到表B並且表B具有更多列,那麼通常它會在每次連接B時複製表A中的行。在這種情況下,您希望重複行在表A中爲空嗎? –
因此,假設Table_A的Print_group列在第一行的值爲1,第二行的值爲2。在Table_B中只有一行(現在保持簡單)。 Table_B的Print_digital列包含來自Table_A第一行的值1,並且Table_B的Print_offset列包含值2(這些值位於Table_B的同一行上)。運行上述查詢返回包含兩行的結果集 - 它是Table_B的一行返回兩次... – user2852877