0
私はproject_idに割り当てられたaccount_idsのリストを含むProject_Assignedテーブルを持っています。存在しない:特定のプロジェクトに割り当てられていないアカウントを選択しますか?
以下特定のプロジェクトに現在割り当てられていないすべてのクライアントのリストを収集しようとしています。
特定のプロジェクトに関連付けられているクライアントがない場合、以下のクエリが機能しますが、プロジェクトにクライアントを割り当てるとすぐに結果セットには何も返されません。そのプロジェクト
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 |
+-----------+-----------+
こんにちは私は上記の編集し、今の作業を釣りを微調整しました。これは本当に助けてくれてありがとう。 – Malcr001
@ user971824:ようこそ! – ruakh
@ user971824:あなたの編集は本当に私にとって意味をなさない。例えば、LEFT JOIN Admin_Agencyの目的は何ですか?クエリの他の部分は実際には 'Admin_Agency'テーブルを参照しません。 – ruakh