0
好吧我有一个Project_Assigned表,其中包含分配给project_id的account_ids列表。不存在:选择未分配给特定项目的帐户?
下面我试图收集当前未分配给特定项目的所有客户端的列表。
目前下面的查询如果没有客户端与特定项目相关联,但只要我将一个客户端分配给项目,结果集将不返回任何内容,而应返回所有未分配给其他客户端的客户端该项目。
SELECT Account.Account_ID,
Client.First_Name AS `First_Name`, Client.Last_Name AS `Last_Name`, Client.Profile_Pic, Client.Job_Title, Client.Company_Name
FROM Client
LEFT JOIN Account ON (Account.Account_ID = Client.Client_ID)
LEFT JOIN `Admin_Agency` ON (Client.Agency_ID_FK = Admin_Agency.Agency_ID)
WHERE Account.Access_Type = 'Client' && NOT EXISTS
(SELECT Account.Account_ID, Account.Access_Type
FROM `Project_Assigned` projects
INNER JOIN `Account` ON (projects.AccountID = Account.Account_ID)
INNER JOIN `Project` ON (projects.ProjectID = Project.Project_ID)
LEFT JOIN `Client` ON (Account.Account_ID = Client.Client_ID)
WHERE projects.ProjectID = 48 && Account.Access_Type = 'Client');
表Project_Assigned:
+-----------+-----------+
| ProjectID | AccountID |
+-----------+-----------+
| 4 | 3 |
| 4 | 4 |
| 4 | 5 |
| 4 | 6 |
| 12 | 1 |
| 12 | 11 |
| 12 | 12 |
| 29 | 18 |
| 31 | 18 |
| 46 | 18 |
| 48 | 18 |
| 48 | 12 |
+-----------+-----------+
嗨,我做了一个pwew调整编辑上面,现在它的工作。谢谢,这真的有帮助。 – Malcr001 2012-03-17 17:25:30
@ user971824:不客气! – ruakh 2012-03-17 17:28:34
@ user971824:你的编辑对我来说并不合适。例如,“LEFT JOIN Admin_Agency”的用途是什么?查询中没有其他内容实际上是指“Admin_Agency”表。 – ruakh 2012-03-17 17:30:24