大约一周前刚刚启动SQL,我想知道为什么这给了我一个错误。 如果我在顶部选择*,我可以看到ITEM_NUMBER以及是否使用了其他列名称,但我看不到这一个。SQL - 从子查询中选择主键
我使用Oracle和ORDER_DELIVERABLES将ITEM_NUMBER作为主键,而DIGITALPRODUCT_ORDER.ITEM_NUMBER将它作为PF,我假设它是Primary Foreign?
如果任何人都可以帮助我,也许可以解释一点,那会很棒。 谢谢!
SELECT ITEM_NUMBER
FROM
(
SELECT *
FROM ORDER_DELIVERABLES
INNER JOIN DIGITALPRODUCT_ORDER
ON DIGITALPRODUCT_ORDER.ITEM_NUMBER = ORDER_DELIVERABLES.ITEM_NUMBER
)
虽然这个版本使得再选择毫无意义...... – Neil
是的,我tryed到*正确的只有* ...但你说得对,我要添加一些信息 – Sebas
标识他只选择项目数,他可以用ORDER_DELIVERABLES中的'SELECT o.ITEM_NUMBER'替换一个存在子句的连接(这非常昂贵)o WHERE EXISTS(SELECT NULL FROM DIGITALPRODUCT_ORDER d WHERE d.ITEM_NUMBER = o.ITEM_NUMBER)'。 – corsiKa