我有一个名为accounts
. 此表中有一个名为 的字段salesmanager_id
。99% 的情况下,此字段中的值对于特定客户的所有帐户(用 指定customer_id
)始终相同。
我想要做的是customer_id
为客户分配给多个销售经理的客户。例如:
+------------------------------------+
| id | customer_id | salesmanager_id |
|------------------------------------|
| 1 | 12 | 4 |
| 2 | 12 | 4 |
| 3 | 14 | 3 | <-- I want this customer_id
| 4 | 14 | 4 |
+------------------------------------+
在上面的示例中,customer_id
14 同时salesmanager_id
分配了 3 和 4。我想customer_id
为我的列表检索它。
我尝试了以下查询,但返回一个空结果(虽然我确信至少存在一些差异)。
SELECT `name`, `customer_id` AS `customer`, `salesmanager_id` FROM `accounts`
WHERE `salesmanager_id` NOT IN (
SELECT `salesmanager_id` FROM `accounts` a
LEFT JOIN `customers` c ON (a.customer_id = c.id)
WHERE a.customer_id=c.id
) GROUP BY `customer`;