我已经达到了我的查询编写专业知识的极限。 我有以下表中EXTID的组合+ extdt我们一种复合键的:SQL当外键2出现在第二个表中时,查找具有外键1的所有行
ents
entid | extid | extdt | itemid |
=======================================
1000 | 100 | '2016-08-01' | 1 |
1001 | 100 | '2016-08-01' | 2 |
1002 | 200 | '2016-08-01' | 3 |
1003 | 100 | '2016-08-02' | 4 |
1004 | 200 | '2016-08-02' | 5 |
1005 | 100 | '2016-08-02' | 6 |
所以,如果商品ID(1或2)中的项目表,查询将返回两行1000和1001如果itemid的3存在,列1002返回等等...
items
itemid | itemDesc |
===================
1 | 'fu' |
3 | 'bar' |
4 | 'blah' |
随着上述项目表,我希望回去:
entid | extid | extdt | itemid |
=======================================
1000 | 100 | '2016-08-01' | 1 |
1001 | 100 | '2016-08-01' | 2 |
1002 | 200 | '2016-08-01' | 3 |
1003 | 100 | '2016-08-02' | 4 |
1005 | 100 | '2016-08-02' | 6 |
我想不出一个ggregate函数可以做我正在寻找的东西,也不会像ANY/EXISTS那样工作。我越来越挂在组织的项目ID ...任何人都可以请指出我在正确的方向吗?
@techspider比'INNER JOIN' –
什么是你的输出逻辑吗?即使项目表中不存在,是否要显示项目2,6行? – techspider
您的预期结果没有意义 - 为什么包含itemid 2和6的行? – Hogan