Sql in、in子句中的多列
我无法在Oracle中运行此查询,因为它不允许在in子句中使用多个列名Sql in、in子句中的多列,sql,Sql,我无法在Oracle中运行此查询,因为它不允许在in子句中使用多个列名 CURSOR temp_3((VOUCHER_NO IN NUMBER) IS SELECT * FROM INVOICE_ITEM_TAB WHERE INVOICE_ID, PO_REF_NUMBER IN ( SELECT INVOICE_ID, PO_REF_NUMBER, FROM IN
CURSOR temp_3((VOUCHER_NO IN NUMBER) IS
SELECT *
FROM INVOICE_ITEM_TAB
WHERE INVOICE_ID, PO_REF_NUMBER IN (
SELECT INVOICE_ID, PO_REF_NUMBER,
FROM INVOICE_TAB
WHERE VOUCHER_NO_REF IN (
SELECT VER_NO
FROM WORK_ORDER_CODING_TAB
WHERE VER_NO=VOUCHER_NO
)
)
有人能帮我改用exists吗
相反,使用存在
我想你想要这样的东西 select*from table where col in select Id from table where column='xyz' **还有一条路**
从“aa”、“bb”和“cc”中的列所在的表中选择*。您想要这样的东西吗 select*from table where col in select Id from table where column='xyz' **还有一条路**
从“aa”、“bb”和“cc”中的列所在的表中选择*您想做什么?不能在子句中使用多列。。您可以使用内部联接或exists查询检查tihs链接您想做什么?不能在子句中使用多列。。您可以使用内部联接或现有查询检查tihs链接
SELECT *
FROM INVOICE_ITEM_TAB iit
WHERE exists
SELECT null,
FROM INVOICE_TAB it
WHERE
iit.INVOICE_ID = it.INVOICE_ID and
iit.PO_REF_NUMBER = it.PO_REF_NUMBER and
it.VOUCHER_NO_REF IN (
SELECT VER_NO
FROM WORK_ORDER_CODING_TAB
WHERE VER_NO=VOUCHER_NO
)
)