解决方案 »
- Syntax error converting datetime from character string
- 我看见数据库中有一种日期时间的表示“1200279234”,如何转成我们看得懂的2008年某月某日某时
- 如何让SQL列出我需要的时间段
- 请教一条统计的SQL语句
- 急救:寻求支持MSSQL 2008版本的LOG EXPLORER
- 如何锁定数据库中的一个表???
- 这个错误是什么意思呀
- 关于动态执行公式的方法
- SQL Server跨越Internet互联的猜想,挑战高手!
- 数据库设计实例
- 请问,我想得到 数据库中“开始时间”字段到今天的天数,应该如何写SQL
- 数据库备份后 清除历史记录怎么无效? #################100结贴%
create table test (id int,数量 int, 时间 datetime,内码1 int ,内码2 int)
insert test
select 1,30,'2011-3-3',1992,1 union all
select 2,20,'2011-6-5',1992,1 union all
select 3,22,'2012-5-1',1993,2 union all
select 4,11,'2013-5-6',1991,1
select MIN(id),
SUM(数量),
MAX(时间),
内码1,
内码2
from test
group by 内码1,
内码2
order by MIN(id)
insert test
select 30,'2011-3-3',1992,1 union all
select 20,'2011-6-5',1992,1 union all
select 22,'2012-5-1',1993,2 union all
select 11,'2013-5-6',1991,1select SUM(数量),
MAX(时间),
内码1,
内码2
from test
group by 内码1,
内码2
SUM(数量),
MAX(时间),
内码1,
内码2
from test
group by 内码1,
内码2
哥哥诶~ 我那时创建测试表插入测试数据呢····· select SUM(数量),
MAX(时间),
内码1,
内码2
from test
group by 内码1,
内码2
DROP TABLE test
go
CREATE TABLE test
(
dt nvarchar(10) ,
no1 NVARCHAR(10) ,
no2 NVARCHAR(10),
num int
)
GOINSERT INTO test (dt , no1 ,no2, num)
SELECT '2011-3-3' , '1992' , '1' , 30 UNION ALL
SELECT '2011-6-5' , '1992' ,'1' , 20 UNION ALL
SELECT '2012-5-1' , '1993' , '2', 22 UNION ALL
SELECT '2013-5-6' , '1991' ,'1', 11
---------------------------------執行查詢----------------------
SELECT SUM(num) AS 數量 , MAX(dt) AS 時間 , no1 , no2 FROM test GROUP BY no1 ,no2
ORDER BY SUM(num) desc/*
數量 時間 no1 no2
----------- ---------- ---------- ----------
50 2011-6-5 1992 1
22 2012-5-1 1993 2
11 2013-5-6 1991 1(3 row(s) affected)
*/
哥哥诶~ 我那时创建测试表插入测试数据呢····· select SUM(数量),
MAX(时间),
内码1,
内码2
from test
group by 内码1,
内码2
大哥的方法已经解决问题!