2014-12-29 48 views
-1

表選擇produtcs產品MySQL的:的UserProfiles</p> <pre><code>+-----------+----------+ | id| username | +-----------+----------+ | 1| Carrera | | 2| Taylor | | 3| Diaz | +-----------+----------+ </code></pre> <p>表:notin其他表

+-----------+----------+ 
|   id| name  | 
+-----------+----------+ 
|  123| aaaaaaa | 
|  234| bbbbbbb | 
|  456| ccccccc | 
+-----------+----------+ 

表:購買

+-----------+----------+-----------+ 
|   id| username | productid | 
+-----------+----------+-----------+ 
|   1| Carrera | 123  | 
|   2| Taylor | 234  | 
|   3| Diaz  | 456  | 
+-----------+----------+-----------+ 

如何選擇產品,用戶卡雷拉尚未購買。對不起ENG不好。

回答

0

正如標題所暗示,有一個not in運營商可以使用:

SELECT * 
FROM products 
WHERE id NOT IN (SELECT productid 
        FROM purchase 
        WHERE username = 'Carrera') 
0

試試這個:

SELECT P.id, P.name 
FROM Products P 
LEFT OUTER JOIN purchase P1 ON P.id = P1.productid AND P1.username = 'Carrera' 
WHERE P1.id IS NULL; 

OR

SELECT P.id, P.name 
FROM Products P 
WHERE NOT EXISTS (SELECT 1 
        FROM purchase P1 
        WHERE P.id = P1.productid AND P1.username = 'Carrera'); 
相關問題