我有以下表结构
batch_id id value
877 10 ABC
877 41 XYZ
877 23 VPN
855 10 ABC
866 41 XYZ
我想要两个条件都适用的批处理ID id = 10,值= ABC id = 41,值= XYZ
在上面的示例中,我想要877作为输出。
我写过如下查询:
SELECT final_table.id
FROM
(
select C.value , C.id
FROM C
WHERE (C.id, C.value) IN ((10, 'ABC'), (41, 'XYZ'))
) AS final_table
GROUP BY final_table .id
HAVING COUNT(final_table .id) > 1
由于我对sql没有太多了解,请建议这是正确的吗?
提前致谢。