我有3張這樣的桌子
產品
| 產品編號 | 產品詳情 |
|---|---|
| 1 | ... |
| 2 | ... |
| 3 | ... |
小販
| 供應商 ID | 供應商詳情 |
|---|---|
| 1 | ... |
| 2 | ... |
| 3 | ... |
產品供應商
| 產品編號 | 供應商 ID |
|---|---|
| 1 | 1 |
| 2 | 1 |
| 1 | 2 |
| 2 | 2 |
| 3 | 2 |
我將如何查找未映射到特定供應商的產品數量。
我試過了:
SELECT
COUNT(pr.id) AS product_count
FROM
products pr
LEFT JOIN vendor_product_map vp ON
pr.id = vp.product
LEFT JOIN vendors vv ON
vp.vendor = vv.id
WHERE
vv.id = 3 AND vp.vendor IS NULL
但這似乎不對。任何幫助表示贊賞
uj5u.com熱心網友回復:
一個簡單的not exists查詢就足夠了:
select *
from products
where not exists (
select *
from vendor_product_map
where vendor_product_map.product = product.id
and vendor_product_map.vendor = 12345678
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/439332.html
下一篇:包含連接的SQL子查詢
