如何在 Oracle 8i 中创建 INNER JOIN 和 LEFT JOIN
How-To Create an INNER JOIN and LEFT JOIN in Oracle 8i
我正在尝试创建一个 Oracle 8i QUERY,它结合了具有多个条件的 Inner JOIns 以及具有多个条件的 Left JOin。但是,我一直收到 SQL 命令未正确结束。我的经验主要是在 T-SQl 上,所以如果这很明显,请提前致歉..
SELECT TRANS.CUSTOMER_NUMBER AS "AR CUST", CUST.CUSTOMER_NUMBER AS
"CUSTNUM", CUSTA.FVE_NUMBER AS "FVE"
FROM FINANCE.AR_TRANSACTIONS TRANS
JOIN FINANCE.CUSTOMERS CUST
ON (TRANS.CUSTOMER_NUM = CUST.CUSTOMER_NUM
AND TRANS.COMPANY_NUM = CUST.COMPANY_NUM)
LEFT JOIN FINANCE.CUSTOMER_ADDRESSES CUSTA
ON (TRANS.FVE_NUMBER = CUSTA.FVE_NUMBER
AND TRANS.COMANY_NUM = CUSTA.CUSTOMER_NUM )
WHERE ROWNUM < 5;
8i 不支持 ANSI '92 连接语法 left, right, inner, full outer, cross join syntax 您必须使用 (+) 符号...
类似...
SELECT TRANS.CUSTOMER_NUMBER AS "AR CUST"
, CUST.CUSTOMER_NUMBER AS "CUSTNUM"
, CUSTA.FVE_NUMBER AS "FVE"
FROM FINANCE.AR_TRANSACTIONS TRANS
, FINANCE.CUSTOMERS CUST
, FINANCE.CUSTOMER_ADDRESSES CUSTA
WHERE TRANS.CUSTOMER_NUM = CUST.CUSTOMER_NUM
AND TRANS.COMPANY_NUM = CUST.COMPANY_NUM
AND TRANS.FVE_NUMBER = CUSTA.FVE_NUMBER(+)
AND TRANS.COMANY_NUM = CUSTA.CUSTOMER_NUM(+)
AND ROWNUM < 5
我正在尝试创建一个 Oracle 8i QUERY,它结合了具有多个条件的 Inner JOIns 以及具有多个条件的 Left JOin。但是,我一直收到 SQL 命令未正确结束。我的经验主要是在 T-SQl 上,所以如果这很明显,请提前致歉..
SELECT TRANS.CUSTOMER_NUMBER AS "AR CUST", CUST.CUSTOMER_NUMBER AS
"CUSTNUM", CUSTA.FVE_NUMBER AS "FVE"
FROM FINANCE.AR_TRANSACTIONS TRANS
JOIN FINANCE.CUSTOMERS CUST
ON (TRANS.CUSTOMER_NUM = CUST.CUSTOMER_NUM
AND TRANS.COMPANY_NUM = CUST.COMPANY_NUM)
LEFT JOIN FINANCE.CUSTOMER_ADDRESSES CUSTA
ON (TRANS.FVE_NUMBER = CUSTA.FVE_NUMBER
AND TRANS.COMANY_NUM = CUSTA.CUSTOMER_NUM )
WHERE ROWNUM < 5;
8i 不支持 ANSI '92 连接语法 left, right, inner, full outer, cross join syntax 您必须使用 (+) 符号...
类似...
SELECT TRANS.CUSTOMER_NUMBER AS "AR CUST"
, CUST.CUSTOMER_NUMBER AS "CUSTNUM"
, CUSTA.FVE_NUMBER AS "FVE"
FROM FINANCE.AR_TRANSACTIONS TRANS
, FINANCE.CUSTOMERS CUST
, FINANCE.CUSTOMER_ADDRESSES CUSTA
WHERE TRANS.CUSTOMER_NUM = CUST.CUSTOMER_NUM
AND TRANS.COMPANY_NUM = CUST.COMPANY_NUM
AND TRANS.FVE_NUMBER = CUSTA.FVE_NUMBER(+)
AND TRANS.COMANY_NUM = CUSTA.CUSTOMER_NUM(+)
AND ROWNUM < 5