sql分组查询数据

老杨_sz 2009-11-19 10:27:22
表A:

epno epdate epmoney
001 2009-11-19 10:12:28.950 5.00
001 2009-11-19 10:13:28.950 2.00
002 2009-11-19 10:22:28.950 5.00
001 2009-11-20 10:05:28.950 5.00
002 2009-11-20 10:21:28.950 4.00
001 2009-11-21 10:09:28.950 3.00
002 2009-11-21 10:33:28.950 5.00
002 2009-11-21 12:44:28.950 2.00

如何通过SQL语句查询到如下内容:
001 2009-11-19 7.00
001 2009-11-20 5.00
001 2009-11-21 3.00
002 2009-11-19 5.00
002 2009-11-20 4.00
002 2009-11-21 7.00
...全文
61 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
guguda2008 2009-11-19
  • 打赏
  • 举报
回复
IF OBJECT_ID('A') IS NOT NULL DROP TABLE A
GO
CREATE TABLE A(
epno VARCHAR(50)
,epdate DATETIME
,epmoney INT
)
INSERT INTO A
SELECT '001','2009-11-19 10:12:28.950', 5.00 UNION ALL
SELECT '001','2009-11-19 10:13:28.950', 2.00 UNION ALL
SELECT '002','2009-11-19 10:22:28.950', 5.00 UNION ALL
SELECT '001','2009-11-20 10:05:28.950', 5.00 UNION ALL
SELECT '002','2009-11-20 10:21:28.950', 4.00 UNION ALL
SELECT '001','2009-11-21 10:09:28.950', 3.00 UNION ALL
SELECT '002','2009-11-21 10:33:28.950', 5.00 UNION ALL
SELECT '002','2009-11-21 12:44:28.950', 2.00
SELECT epno,CONVERT(VARCHAR(10),epdate,120),SUM(epmoney)
FROM A
GROUP BY epno,CONVERT(VARCHAR(10),epdate,120)
/*
epno
-------------------------------------------------- ---------- -----------
001 2009-11-19 7
002 2009-11-19 5
001 2009-11-20 5
002 2009-11-20 4
001 2009-11-21 3
002 2009-11-21 7
*/



dawugui 2009-11-19
  • 打赏
  • 举报
回复
create table a(epno varchar(10),epdate datetime,                 epmoney decimal(18,2))
insert into a values('001', '2009-11-19 10:12:28.950' , 5.00)
insert into a values('001', '2009-11-19 10:13:28.950' , 2.00)
insert into a values('002', '2009-11-19 10:22:28.950' , 5.00)
insert into a values('001', '2009-11-20 10:05:28.950' , 5.00)
insert into a values('002', '2009-11-20 10:21:28.950' , 4.00)
insert into a values('001', '2009-11-21 10:09:28.950' , 3.00)
insert into a values('002', '2009-11-21 10:33:28.950' , 5.00)
insert into a values('002', '2009-11-21 12:44:28.950' , 2.00)
go

select epno , convert(varchar(10),epdate,120) epdate,sum(epmoney) epmoney from a group by epno , convert(varchar(10),epdate,120) order by epno , epdate

drop table a

/*
epno epdate epmoney
---------- ---------- ----------------------------------------
001 2009-11-19 7.00
001 2009-11-20 5.00
001 2009-11-21 3.00
002 2009-11-19 5.00
002 2009-11-20 4.00
002 2009-11-21 7.00

(所影响的行数为 6 行)

*/
chuifengde 2009-11-19
  • 打赏
  • 举报
回复
SELECT epno,CONVERT(VARCHAR(10),epdate,120),sum(epmoney) 
from [Table]
group by epno,CONVERT(VARCHAR(10),epdate,120)
老杨_sz 2009-11-19
  • 打赏
  • 举报
回复
够快的,刚想出来了,你就回答了,谢谢,结了
guguda2008 2009-11-19
  • 打赏
  • 举报
回复
SELECT epno,CONVERT(VARCHAR(10),epdate,120),SUM(epmoney)
FROM A
GROUP BY epno,CONVERT(VARCHAR(10),epdate,120)

dawugui 2009-11-19
  • 打赏
  • 举报
回复
select epno , convert(varchar(10),epdate,120) epdate,sum(epmoney) epmoney from a group by epno , convert(varchar(10),epdate,120)

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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