求一查询语句。
表1:
数值 日期
12 2000-01-12
16 2001-01-12
18 2002-01-01
取得:18,2002-01-01 (注:18为最大值)
问题点数:20、回复次数:10Top
1 楼sdhdy(大江东去...)回复于 2003-09-02 14:55:57 得分 0
select * from table1 where 数值 in (select max(数值) from table1)
--日期也要最大的吗?
select max(数值) 最大数值,max(日期) 日期 from table1Top
2 楼mjhnet(天涯沦落人)回复于 2003-09-02 15:03:42 得分 0
select top 1 * from 表1
order by 数值 descTop
3 楼penper(木头)回复于 2003-09-02 15:04:43 得分 0
可能我表达的有点简单了:
数值 日期
12 2000-01-12
16 2001-01-12
18 2000-02-01
11 2000-01-12
14 2001-01-12
17 2002-01-01
取得:18,2000-02-01,2002-01-01,2000-01-01
说明:最大值,最大值的日期,最大日期,最小日期Top
4 楼yujohny(踏网无痕)回复于 2003-09-02 16:16:23 得分 0
DECLARE @aa TABLE(数值 INT,日期 DATETIME)
INSERT @aa VALUES(12,'2000-01-12')
INSERT @aa VALUES(16,'2001-01-12')
INSERT @aa VALUES(18,'2000-02-01')
INSERT @aa VALUES(11,'2000-01-12')
INSERT @aa VALUES(14,'2001-01-12')
INSERT @aa VALUES(17,'2002-01-01')
SELECT * FROM
(SELECT TOP 1 * FROM @aa ORDER BY 数值 DESC) A CROSS JOIN
(SELECT MAX(日期) AS 最大日期 FROM @aa) B CROSS JOIN
(SELECT MIN(日期) AS 最小日期 FROM @aa) CTop
5 楼zjcxc(邹建)回复于 2003-09-02 16:19:59 得分 0
select top 1 *
,最大日期=(select max(日期) from 表1)
,最小日期=(select min(日期) from 表1)
from 表1 order by 数值 descTop
6 楼lionstar(小狮子)回复于 2003-09-02 16:52:08 得分 0
select 最大值,最大值的日期,最大日期,最小日期
from
( select 数值 as 最大值,日期 as 最大值的日期
from table1 where 数值=(select max(数值) from table1)) as query1,
(select max(日期) as 最大日期,min(日期) as 最小日期 from table1) as query2)
开心就好!!!Top
7 楼lionstar(小狮子)回复于 2003-09-02 16:53:29 得分 0
select 最大值,最大值的日期,最大日期,最小日期
from
( select 数值 as 最大值,日期 as 最大值的日期
from table1 where 数值=(select max(数值) from table1)) as query1,
(select max(日期) as 最大日期,min(日期) as 最小日期 from table1) as query2
上次多了一个括号;(Top
8 楼aierong()回复于 2003-09-02 17:39:51 得分 0
DECLARE @aa TABLE(数值 INT,日期 DATETIME)
INSERT @aa VALUES(12,'2000-01-12')
INSERT @aa VALUES(16,'2001-01-12')
INSERT @aa VALUES(18,'2000-02-01')
INSERT @aa VALUES(11,'2000-01-12')
INSERT @aa VALUES(14,'2001-01-12')
INSERT @aa VALUES(17,'2002-01-01')
select top 1 数值 as 最大值,CONVERT(varchar(10) ,日期,120 ) as 最大值日期 ,最大日期=convert(varchar(10),(select max(日期) from @aa),120),最小日期=convert(varchar(10),(select min(日期) from @aa),120)
from @aa
order by 数值 desc
Top
9 楼aierong()回复于 2003-09-02 17:50:22 得分 0
DECLARE @aa TABLE(数值 INT,日期 DATETIME)
INSERT @aa VALUES(12,'2000-01-12')
INSERT @aa VALUES(16,'2001-01-12')
INSERT @aa VALUES(18,'2000-02-01')
INSERT @aa VALUES(11,'2000-01-12')
INSERT @aa VALUES(14,'2001-01-12')
INSERT @aa VALUES(17,'2002-01-01')
select (select max(数值) from @aa )as 数值,
convert(varchar(10),(select top 1 日期 from @aa order by 数值 desc),120) as 最大值,
convert(varchar(10),(select max(日期) from @aa),120) as 最大日期,
convert(varchar(10),(select min(日期) from @aa),120) as 最小日期
Top
10 楼zarge(鲨去来兮)回复于 2003-09-03 02:19:32 得分 20
select t1.数值, 日期, 最大日期, 最小日期
From 表1 t1, (select max(数值) as 数值, max(日期) as 最大日期, min(日期) as 最小日期 from 表1) t2
where t1.数值 = t2.数值
Top




