【发布时间】:2014-04-24 21:49:23
【问题描述】:
表 1
NO_REG - ID
表 2
NO_REG - 包
表 1 包含的问题可以说是 3 个 ID,表 2 具有相同的 NO_REG 但在 BAGS 中只有 1 行
我愿意
SELECT BAGS, ID FROM TABLE 1 AS T1 INNER JOIN TABLE 2 AS T2 ON T1.NO_REG = T2.NO_REG
我明白了
NO_REG ID - BAGS
123 999- 2
123 989- 2
123 979- 2
我需要
NO_REG ID - BAGS
123 999- 2
123 989- NULL (or 0)
123 979- NULL (or 0)
希望我已经足够清楚了。
【问题讨论】:
-
你为什么不知道你用的是哪个rdbms? sql-server != mysql 关于你的问题,你怎么知道哪个 id 和哪个包?如果 Table2 中有两条记录怎么办?如果 Table2 中的记录多于 Table1 中具有相同 id 的记录怎么办?请更清楚地了解此类边缘情况,尤其是因为您想要的确实非常规。
-
NO_REG 中的值是什么?
-
抱歉忘记了,更新了帖子。
-
还有第三张桌子吗?你怎么知道 BAG 2 属于 ID 999?这是什么规则?还有什么具体的规定吗?你有没有发现你使用的是 MySQL 还是 SQL Server? :)
-
我使用 sql server,只有 2 个表
NO_REG(invoice #), ID(products), BAGS(bags used to dispatch those products)问题在于每个产品(ID)行的袋子都是重复的。
标签: mysql sql sql-server