sql - Oracle sql 连接计数给了我 00904 的错误。00000 - "%s: invalid identifier
问题描述
这是我的查询,它试图获取 CUSTOMERS 表中列出的多少 CUSTOMER_ID 也已经在 TRANSACTIONS 表中。
SELECT
DISTINCT COUNT(*)
FROM
(
SELECT
CUSTOMERS.CUSTOMER_ID
FROM
CUSTOMERS
INNER JOIN TRANSACTIONS
ON CUSTOMERS.CUSTOMER_ID = TRANSACTIONS.CUSTOMER_ID
)
此查询返回
- 00000 - “%s:无效标识符错误。
如何修复我的查询?
解决方案
Acount(*)
将始终返回一个数字,因此distinct
不需要对其执行 a 。听起来你想要更像:
SELECT COUNT( DISTINCT CUSTOMERS.CUSTOMER_ID )
FROM CUSTOMERS
INNER JOIN TRANSACTIONS
ON CUSTOMERS.CUSTOMER_ID = TRANSACTIONS.CUSTOMER_ID