如何解决数据未在SQL中显示
| 我有一个非常简单的问题,但是自从我是SQL世界的新手以来,我无法弄清楚。这是尝试从SQL脚本中提取数据时的样子。SUPPLIERID PRODUCTID DESCRIPTION SUPPLIERID
- - - 1
- - - 4
- - - 3
- - - 2
2A 1 Metal Piece -
3A 2 Plastic Piece -
4A 3 Hinges -
5A 4 Hooks -
这是我的代码
select \"PRODUCT1\".\"SUPPLIERID\" as \"SUPPLIERID\",\"PRODUCT1\".\"PRODUCTID\" as \"PRODUCTID\",\"PRODUCT1\".\"DESCRIPTION\" as \"DESCRIPTION\",\"SUPPLIER\".\"SUPPLIERID\" as \"SUPPLIERID\"
FROM \"SUPPLIER\"
FULL OUTER JOIN PRODUCT1
ON supplier.supplierid = product1.supplierid
如果我做左或右联接,我只会得到一列信息。如何获取所有列以填写4行?
解决方法
您的
product1.supplierid
与supplier.supplierid
不符。
因此,行之间没有真正的联接。.因此,您将获得每个表的完整副本。
您尝试将1、2、3、4与2A,3A,4A,5A匹配(它们不匹配)
您或者连接了错误的列(也许您希望supplier.supplierid
和product1.prdoductid
),或者表之间的关联不正确。
,供应商ID不匹配。如果\“ 1A \”应该匹配\“ 1 \”,那么您应该这样做(SQL Server):
select \"PRODUCT1\".\"SUPPLIERID\" as \"SUPPLIERID\",\"PRODUCT1\".\"PRODUCTID\" as \"PRODUCTID\",\"PRODUCT1\".\"DESCRIPTION\" as \"DESCRIPTION\",\"SUPPLIER\".\"SUPPLIERID\" as \"SUPPLIERID\"
FROM \"SUPPLIER\" INNER JOIN PRODUCT1
ON supplier.supplierid + \'A\' = product1.supplierid
但是,只有在您确定必须将\“ 1A \”匹配为\“ 1 \”时,才应该这样做。如果不是,则它们实际上不应该匹配,这就是为什么使用ѭ7来获得该结果的原因。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。