我的目标是编写一段代码来查找具有不同测试结果的相同ID。表1包含许多行,但我添加了这4行作为示例。我知道我的代码不正确,但获取此特定信息的正确方式是什么?(参见下面的预期目标)我希望我的问题有意义,但如果不清楚,请随时发表评论。
表1:
ID|TEST_RESULT|诊断
-|-|
2|肯定|X78
2|否定|U98
3|肯定|U98
4|NFEGATIVE|Y55
预期目标:
ID|TEST_RESULT|诊断
-|-|
2|肯定|X78
2|否定|U98
代码:
SELECT *
FROM table1
WHERE ID <> ' ' AND TEST_RESULT= NEGATIVE AND TEST_RESULT = POSITIVE;
3条答案
按热度按时间bgibtngc1#
您将需要一个子查询来计算每个ID有多少个
POSITIVE
和NEGATIVE
结果,然后使用其结果进行筛选:小提琴演示
0yycz8jy2#
只需使用
EXISTS
运算符检查表中是否存在具有相同id
但不同test_result
值的另一行。输出
Id|test_Result|诊断
-|-|
2|肯定|X78
2|否定|U98
tquggr8v3#
ID|TEST_RESULT|诊断
-|-|
2|肯定|X78
2|否定|U98
Fiddle