SQLite中有以下情形。停止在連接上返回多個相似的行
TableA
ID
-----
1 |
2 |
3 |
Table B
ID | AID |Tag
----------------
1 | 1 | Hide
2 | 1 | Show
3 | 2 | Null
4 | 3 | Show
表B具有柱AID是表A.
的ID在以上示例中 表A編號: '1' 具有 - 的 '1'>表B ID和「2 '和標籤'隱藏'和'顯示'附加到它。
我正在尋找一個SQL,只會在上面的示例中返回表A ID:'2'和'3'。 基本上,如TableA ID:'1'附有一個'Hide'標記,不要返回它(即使它也附帶一個show標記)
我使用的SQL是(藉口名字,這只是一個簡單的例子)
select
a.ID as a_ID,
b.ID as b_ID,
b.Tag as Tag
from
Table A as a
left join Table B on a.id = b.aID
and b.tag != 'hide'
這個SQL的問題,它仍然返回
a_ID | b_ID | Tag
-------------------------------
1 | 2 | Show
我一點點卡和任何幫助將非常感激。我不是100%確定如何在谷歌搜索上工作。 我得到的最接近的是這個問題How to return only 1 row if multiple duplicate rows and still return rows that are not duplicates? 但我無法弄清楚GROUP BY在這裏會有幫助。
儘量'選擇...,援助不是(選擇的B AID其中標籤='隱藏')' – mafafu