select top 1 ..........from [table] where youfields='2004-11-11' order by myfield asc select top 1 ..........from [table] where youfields='2004-11-11' order by myfield desc
纠正 select top 1 ..........from [table] where myfield='2004-11-11' order by myfield asc select top 1 ..........from [table] where myfield='2004-11-11' order by myfield desc
SELECT TOP 1 ...... FROM [TABLE] WHERE MYFIELF LIKE '%2004-11-11%' SELECT TOP 1 ...... FROM [TABLE] WHERE MYFIELF LIKE '%2004-11-11%' ORDER BY MYFIELD DESC就可以!
如果是多条的话用嵌套查询 最小 SELECT * FROM table WHERE myfiled = (SELECT TOP 1 myfiled FROM table ORDER BY myfiled ASC) 最大 SELECT * FROM table WHERE myfiled = (SELECT TOP 1 myfiled FROM table ORDER BY myfiled DESC)
----------------------------------------- | id | date | ----------------------------------------- | 1 | 2003-5-6 | ----------------------------------------- | 2 | 2003-5-7 | ----------------------------------------- | 3 | 2003-5-8 | ----------------------------------------- | 4 | 2003-5-9 | -----------------------------------------SELECT * FROM [table] WHERE date =(select max(date) from [table]) Or date =(select min(date) from [table]);不过最好为 date 建立索引 要不很慢!
晕,用时间列来做排序啊 select * from table order by dtime asc select * from table order by dtime desc
select top 1 ..........order by myfield asc select top 1 ..........order by myfield desc
select top 1 ..........order by myfield desc
select max(myfiled) from ddyx
最小日期
select min(myfiled) from ddyx
得到最早的一条数据:select top 1 * from table order by myfield asc
myfiled
2004-11-11 08:30:11
2004-11-11 09:40:11
2004-11-11 11:11:11
2004-11-11 13:11:11
2004-11-11 14:11:11
2004-11-11 18:30:11
2004-11-21 08:30:11
2004-11-21 09:40:11
2004-11-21 11:11:11
2004-11-21 13:11:11
2004-11-21 14:11:11
2004-11-21 18:30:11
select top 1 ..........from [table] where youfields='2004-11-11' order by myfield desc
select top 1 ..........from [table] where myfield='2004-11-11' order by myfield asc
select top 1 ..........from [table] where myfield='2004-11-11' order by myfield desc
SELECT TOP 1 ...... FROM [TABLE] WHERE MYFIELF LIKE '%2004-11-11%' ORDER BY MYFIELD DESC就可以!
最小
SELECT *
FROM table
WHERE myfiled = (SELECT TOP 1 myfiled FROM table ORDER BY myfiled ASC)
最大
SELECT *
FROM table
WHERE myfiled = (SELECT TOP 1 myfiled FROM table ORDER BY myfiled DESC)
| id | date |
-----------------------------------------
| 1 | 2003-5-6 |
-----------------------------------------
| 2 | 2003-5-7 |
-----------------------------------------
| 3 | 2003-5-8 |
-----------------------------------------
| 4 | 2003-5-9 |
-----------------------------------------SELECT *
FROM [table]
WHERE
date =(select max(date) from [table])
Or
date =(select min(date) from [table]);不过最好为 date 建立索引 要不很慢!
select * from table order by dtime asc
select * from table order by dtime desc
select top 1 ..........order by myfield desc
楼主可以自己去尝试,很简单的sql语句到查询分析器里自己去写了试试