我有一個名爲'groups'的表和一個名爲'subscriptions'的另一個表。我想返回用戶沒有訂閱的所有組。查詢不在mysql中
基本上這就是我要否定條件(假設爲ID = 1的用戶,狀態只是如果組被激活校驗或不):
SELECT *
FROM groups g
LEFT
JOIN subscriptions s
ON s.groups = g.id
WHERE g.status = 1
AND s.user = 1
此查詢選擇所有的組用戶訂閱的地方,但我需要那些他沒有訂閱的地方。我的問題是,當他沒有訂閱時,沒有與該用戶相關的表格,所以如果我使用類似於!=的東西,它會返回一些我不需要的東西。
我以爲使用NOT IN或NOT EXISTS,但我無法讓它工作。
你們有快速和高性能的解決方案嗎? 非常感謝您
記錄添加一些示例表數據和預期的結果 - 作爲格式化文本(而不是圖像) – jarlh