2017-06-15 12 views

答えて

0

SELECT * にTASK_ID mt_task_status から(stage_id = mt_task_status FROM TASK_ID SELECT '1' とis_completed = '1') とTASK_IDで(stage_id = mt_task_status FROM TASK_ID SELECT '2' とis_completed = 0) とstage_id in(1,2) order by task_id

0

使用union

select task_id from table where stage_id = 1 and is_completed = 1 
union 
select task_id from table where stage_id = 2 and is_completed = 0 
1

あなたがANDORの組み合わせを使用することができ、例えば:

SELECT task_id 
FROM tasks 
WHERE (stage_id = 1 AND is_completed = 1) 
OR (stage_id = 2 AND is_completed = 2) 
GROUP BY task_id; 
+0

返信ありがとうございますが、私が必要とするのは、stage_id = 1が完了してstage_id = 2が完了していないtask_idsです。どちらか一方ではありません – Adalarasu

+0

このクエリはどちらかではなく両方を返します.. –

+0

ええ、両方の条件が満たされる対応するtask_idsだけが必要です。私のテーブルからは、task_id 2しか得られません。他は、両方のステージで完了しました。 task_id 2のみ(ステージ1は完了し、ステージ2は完了していません) – Adalarasu

関連する問題