2016-11-22 7 views
1

私は私がスケジュールされたサービスを持っていますが、特定の日付に回転を持っていない人を返すように実行しますクエリーだろうこれは何のMySQL排除クエリ

JOB_ID | Email  | Type  | Date  
_____________________________________ 
28319 | [email protected] | Service | 11-24-2016 
_____________________________________ 
28412 | [email protected] | Rotation | 11-24-2016 
_____________________________________ 
38123 | [email protected] | Service | 11-24-2016 
_____________________________________ 
28199 | [email protected]| Service | 11-24-2016 

のように見えるテーブルを持っています。

これは私の試みです:

SELECT j.Job_ID,j.Email,j.Type,j.Date 
from Jobs j 
join 
    Jobs j2 
    on j.Email = j2.Customer_Email 
where j2.JOB_ID NOT IN (select j.JOB_ID 
        from Jobs j 
        where j.Type = 'Rotation' 
       )  AND j.Date = '11-24-2016'; 

だから私のクエリはアンディとロジャーを返します。

+0

を、適切なデータ型なJOINと間違って何 – Strawberry

答えて

1

これがあなたのためにトリックを行う必要があり、の必要はここに参加しません:余談として

SELECT * FROM Jobs WHERE Date = '11-24-2016' AND Type = 'Service' AND 
Email NOT IN (SELECT Email FROM Jobs WHERE Date = '11-24-2016' AND 
Type = 'Rotation'); 
+0

を使用して日付を格納するようにしてください? – Strawberry

+0

@Strawberry JOINsには何も問題ありません – Reto