多种语法使用
Multiple Syntax Use
请更正我的 SQL 查询以便在 Oracle 中使用:
SELECT *
FROM GNGRB.PRBOOK
WHERE (SERIES = 'I' AND BOOKNO = '180922')
AND (SERIES = 'J' AND BOOKNO = '138446')
AND (SERIES = 'K' AND BOOKNO = '196491')
你应该在括号之间使用OR吗?我不确定用例,但看起来查询永远不会有结果,因为您期望同一列中同时有多个值。
SELECT *
FROM GNGRB.PRBOOK
WHERE (SERIES = 'I' AND BOOKNO = '180922')
OR (SERIES = 'J' AND BOOKNO = '138446')
OR (SERIES = 'K' AND BOOKNO = '196491')
我找到你了。您想要所有具有上述组合之一的记录。
如其他答案中所述,使用 OR
或者您可以使用 IN
,如下所示:
SELECT * FROM GNGRB.PRBOOK
WHERE (SERIES,BOOKNO) IN (('I','180922'), ('J', '138446'), ('K', '196491'))
请更正我的 SQL 查询以便在 Oracle 中使用:
SELECT *
FROM GNGRB.PRBOOK
WHERE (SERIES = 'I' AND BOOKNO = '180922')
AND (SERIES = 'J' AND BOOKNO = '138446')
AND (SERIES = 'K' AND BOOKNO = '196491')
你应该在括号之间使用OR吗?我不确定用例,但看起来查询永远不会有结果,因为您期望同一列中同时有多个值。
SELECT *
FROM GNGRB.PRBOOK
WHERE (SERIES = 'I' AND BOOKNO = '180922')
OR (SERIES = 'J' AND BOOKNO = '138446')
OR (SERIES = 'K' AND BOOKNO = '196491')
我找到你了。您想要所有具有上述组合之一的记录。
如其他答案中所述,使用 OR
或者您可以使用 IN
,如下所示:
SELECT * FROM GNGRB.PRBOOK
WHERE (SERIES,BOOKNO) IN (('I','180922'), ('J', '138446'), ('K', '196491'))