如何消除重复行

wudibishen 2006-12-08 01:44:58
有一张order_sub(订单子表),还有一张act_sale(销售表),都有一个ord_no(订单编号)字段,其中销售表记录每一张订单的销售情况,订单子表的一个定单下有多种属于该订单的商品,现在如果把2表用订单编号(ord_no)
连接起来,会出现订单商品重复出现N次的情况(例如一个订单下有3个商品,则2表连接后就会循环显示3遍)

如:下面"W0611290001"这张订单下有3条商品,执行该查询语句后这3条商品重复循环3遍,共显示9条记录,请问如何才能消除重复行正常显示3条记录

select * from order_sub as sub inner join act_sale as s on sub.ord_no = s.ord_no where s.ord_no = 'W0611290001'

请高手帮忙!!
...全文
339 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wudibishen 2006-12-08
  • 打赏
  • 举报
回复
订单表和销售表显示的结果是一样的。
b1688890284 2006-12-08
  • 打赏
  • 举报
回复
你的銷售表里的資料是什么樣子的啊?訂單的每個商品的銷售情況?
b1688890284 2006-12-08
  • 打赏
  • 举报
回复
有一张order_sub(订单子表),还有一张act_sale(销售表),都有一个ord_no(订单编号)字段,其中销售表记录每一张订单的销售情况,订单子表的一个定单下有多种属于该订单的商品,现在如果把2表用订单编号(ord_no)
连接起来,会出现订单商品重复出现N次的情况(例如一个订单下有3个商品,则2表连接后就会循环显示3遍)
請問你要顯示成什么樣子?顯示成3筆?
冷箫轻笛 2006-12-08
  • 打赏
  • 举报
回复
如果这样的话on sub.ord_no = s.ord_no
仅仅这一个条件是不够的

你还少一个关联条件
wudibishen 2006-12-08
  • 打赏
  • 举报
回复
已经解决,谢谢各位。下次一定写清楚。
wudibishen 2006-12-08
  • 打赏
  • 举报
回复
也就是这2张表的关系是多对多的关系,这个张表的记录是一一对应的,但用SQL语句后会变为3*3=9条记录。想合并成原始的3条记录。应该怎么样做
bugchen888 2006-12-08
  • 打赏
  • 举报
回复
最好贴出原始数据和希望得到的结果集
冷箫轻笛 2006-12-08
  • 打赏
  • 举报
回复
订单子表 的订单编号可以重复 这个可以理解 ,因为一个销售单可以有多个商品。

销售表的订单编号为什么也可以重复呢?

如果可以重复的话,
那么

select * from order_sub as sub inner join act_sale as s on sub.ord_no = s.ord_no where s.ord_no = 'W0611290001'

这条语句生成的9条记录就是完全正常的阿!

wudibishen 2006-12-08
  • 打赏
  • 举报
回复
对。说错了。是订单子表和销售表中订单编号都可以重复。并且都包含相同的商品。记录编号所对应的记录数也都一样。
冷箫轻笛 2006-12-08
  • 打赏
  • 举报
回复
--这个查询为何会是三条记录呢?销售表的订单编号可以重复?
select * from act_sale as s where s.ord_no = 'W0611290001'

wudibishen 2006-12-08
  • 打赏
  • 举报
回复
2张表各有3条记录,联合后如何才能只显示这3条?而不是9条?
wudibishen 2006-12-08
  • 打赏
  • 举报
回复
哦。是2张表各有3条记录。看错了。
冷箫轻笛 2006-12-08
  • 打赏
  • 举报
回复
--这个查询是三条记录?
select * from order_sub as sub where ord_no = 'W0611290001'

--这个查询是一条记录?
select * from act_sale as s where s.ord_no = 'W0611290001'


如果是这样的话,你的查询不可能出现9条记录阿!

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧