T
tingchao
Unregistered / Unconfirmed
GUEST, unregistred user!
原始表数据如下:
线名 杆号 日期
a 1 2003-01-01
a 1 2002-01-01
a 1 2001-01-01
a 2 2003-01-01
a 2 2002-01-01
a 2 2001-01-01
b 1 2003-01-01
b 1 2002-01-01
b 2 2003-01-01
b 2 2002-01-01
要求得到的结果如下(注:结果集是最大日期下的每个线名,每个杆号)
线名 杆号 日期
a 1 2003-01-01
a 2 2003-01-01
b 1 2003-01-01
b 2 2003-01-01
该结果是否能用一条SQL语句实现,如果没有,能否有其他办法的建议???
解决的办法如下:
select 线名,杆名,max(日期)
from tablename
group by 线名,杆名
现在还有个问题了.
假如我基础表加了几个字段如下:
原始表数据如下:
线名 杆号 日期 a b c d
a 1 2003-01-01 1 1 1 1
a 1 2002-01-01 2 2 2 2
a 1 2001-01-01 3 3 3 3
a 2 2003-01-01 4 4 4 4
a 2 2002-01-01 5 5 5 5
a 2 2001-01-01 6 6 6 6
b 1 2003-01-01 7 7 7 7
b 1 2002-01-01 8 8 8 8
b 2 2003-01-01 9 9 9 9
b 2 2002-01-01 10 10 10 10
要得到的结果如下:
线名 杆号 日期 a b c d
a 1 2003-01-01 1 1 1 1
a 2 2003-01-01 4 4 4 4
b 1 2003-01-01 7 7 7 7
b 2 2003-01-01 9 9 9 9
现在该要怎么做呢?????
线名 杆号 日期
a 1 2003-01-01
a 1 2002-01-01
a 1 2001-01-01
a 2 2003-01-01
a 2 2002-01-01
a 2 2001-01-01
b 1 2003-01-01
b 1 2002-01-01
b 2 2003-01-01
b 2 2002-01-01
要求得到的结果如下(注:结果集是最大日期下的每个线名,每个杆号)
线名 杆号 日期
a 1 2003-01-01
a 2 2003-01-01
b 1 2003-01-01
b 2 2003-01-01
该结果是否能用一条SQL语句实现,如果没有,能否有其他办法的建议???
解决的办法如下:
select 线名,杆名,max(日期)
from tablename
group by 线名,杆名
现在还有个问题了.
假如我基础表加了几个字段如下:
原始表数据如下:
线名 杆号 日期 a b c d
a 1 2003-01-01 1 1 1 1
a 1 2002-01-01 2 2 2 2
a 1 2001-01-01 3 3 3 3
a 2 2003-01-01 4 4 4 4
a 2 2002-01-01 5 5 5 5
a 2 2001-01-01 6 6 6 6
b 1 2003-01-01 7 7 7 7
b 1 2002-01-01 8 8 8 8
b 2 2003-01-01 9 9 9 9
b 2 2002-01-01 10 10 10 10
要得到的结果如下:
线名 杆号 日期 a b c d
a 1 2003-01-01 1 1 1 1
a 2 2003-01-01 4 4 4 4
b 1 2003-01-01 7 7 7 7
b 2 2003-01-01 9 9 9 9
现在该要怎么做呢?????