一句sql語句怎么寫

jxxiongxujun 2008-10-28 06:25:21
是要根據prodid,dw相同,數量加總,但是又要顯示出prodname
資料為:
prodid prodname qty dw
001 abc 1 臺
002 cb 3 條
001 ac 2 臺
結果為

prodid prodname qty dw
001 abc 3 臺
結果要是根據prodid,dw兩者相同就相加,不管prodname相不相同
但要顯示出
prodid prodname qty dw
001 abc 3 臺
忘給出代碼謝了
...全文
78 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jxxiongxujun 2008-10-28
  • 打赏
  • 举报
回复
隨便只要結果出來了就行
jxxiongxujun 2008-10-28
  • 打赏
  • 举报
回复
如果用max好向是將名字會亂
百年树人 2008-10-28
  • 打赏
  • 举报
回复
---测试数据---
declare @tb table(prodid varchar(10), prodname varchar(20), qty int, dw varchar(5))
insert @tb
select '001' , 'abc', 1, '臺' union all
select '002' , 'cb', 3, '條' union all
select '001' , 'ac', 2, '臺'

---查询---
select prodid , min(prodname) as prodname, sum(qty) as qty , min(dw) dw
from @tb
group by prodid

---结果---
prodid prodname qty dw
---------- -------------------- ----------- -----
001 abc 3 臺
002 cb 3 條

(所影响的行数为 2 行)
rucypli 2008-10-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 szx1999 的回复:]
SQL codeselect prodid,prodname=max(prodname),qty=sum(qty),dw
from tb
group by prodid,dw
[/Quote]

prodname=max(prodname)
百年树人 2008-10-28
  • 打赏
  • 举报
回复
对name的显示有什么要求?取第一个?
dawugui 2008-10-28
  • 打赏
  • 举报
回复
select prodid , max(prodname) prodname, sum(qty) qty , max(dw) dw from tb group by prodid

jiangshun 2008-10-28
  • 打赏
  • 举报
回复
select (select top 1 prodid from TB T.prodid=prodid) as prodid,sum(qty) from TB group by prodid
等不到来世 2008-10-28
  • 打赏
  • 举报
回复
select prodid,prodname=max(prodname),qty=sum(qty),dw
from tb
group by prodid,dw

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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