如何解决Oracle SQL-使用外键显示问题
| 我正在尝试显示所有显示出售日期的产品,也显示所有未出售的产品。 我有两个表:Products
和Sales
。列名是:
产品展示
prod_id
prod_name
营业额
prod_id
销售日期
这两个表使用prod_id
列进行链接,但我似乎无法获得尚未销售的产品以及要销售的产品。
解决方法
SELECT p.prod_id,p.product_name,s.date_of_sale
FROM products p,sales s
WHERE s.prod_id(+) = p.prod_id
;
,我认为您需要在产品和销售之间使用左外部联接:
SELECT p.PROD_ID,p.PRODUCT_NAME,s.DATE_OF_SALE
FROM PRODUCTS p
LEFT OUTER JOIN (SELECT DISTINCT PROD_ID,DATE_OF_SALE
FROM SALES) s
ON (s.PROD_ID = p.PROD_ID)
目前无法使用它,但我认为应该可以得到您想要的。您应该从PRODUCTS获得所有PROD_ID \和PRODUCT_NAME \,并从SALES获得所有DATE_OF_SALE。如果没有产品的DATE_OF_SALE,则您仍应看到该产品。
分享并享受。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。