Tabel_1:
Id test_id testname passfail
1 1001 test1 pass
2 1001 test2 fail
3 1002 test11 pass
4 1002 test12 pass
5 1002 test13 fail
Tabel_2:
Id test_id testname passfail
1 1001 test1 pass
2 1001 test2 pass
3 1001 test3 pass
4 1002 test11 pass
5 1002 test12 pass
6 1002 test13 fail
7 1002 test13 fail
我想检查两个表(Tabel_1和Tabel_2)中的passfail列,使用特定的test_id,如1001.如果任何行失败并且具有特定ID(如10001),则只有在失败或任何行没有失败时才会返回查询在列passfail中,然后返回值将被传递。
答案 0 :(得分:2)
你可以这样做:
SELECT test_id,min(passfail) as passfail FROM(
SELECT * from table_1
UNION ALL
SELECT * FROM table_2) as unioned
WHERE test_id = 1001
GROUP BY test_id
你不需要加入这个表和联合所有通常比连接更好的性能。你可以为每一个选择min(passfail),因为fail更小,所以如果有一个失败值,它将被返回,如果没有,则返回传递