SQL查询仅提取包含记录范围的数据

时间:2016-05-03 20:42:04

标签: sql

我需要你的帮助来用select语句编写查询,只提取包含此范围内代码的声明ID:99213,99214,99215,99217。

所以我的结果应该是索赔ID 1(所有行)和索赔ID 3(所有行)。由于索赔ID 2的代码超出了范围,我不希望在我的结果中使用。

Claim id    line #  code
1            1     99213
1            2     99214
1            3     99215
1            4     99217
2            1     99213
2            2     89557
2            3     36415
3            1     99215
3            2     99217

结果应该是这样的

Claim id    line #  code
1            1     99213
1            2     99214
1            3     99215
1            4     99217
3            1     99215
3            2     99217

1 个答案:

答案 0 :(得分:3)

使用子查询来隔离在值列表之外ClaimID的{​​{1}}个Code。然后使用not in将其排除在主查询之外。

SELECT *
FROM Table
WHERE ClaimID NOT IN (
      SELECT ClaimID FROM Table WHERE Code NOT IN (99213,99214,99215,99217)
);