什么啊?你的表名这么复杂??!!! 我举个简单的例子算了:select * from tablename order by yourdatefield desc limit 2,1就行了,记录就是第二大日期(yourdatefield)的那条记录
解决方案 »
- 帮助把这个用户控件定义为标准。。。。。。。。。。。。。。。。。
- VB6中能添加access数据库的问题?高手帮忙
- 请教老师,Webbrowser如何【传递键值】。
- 请问如何用代码来生成一个Driver da Microsoft para arquivos texto (*.txt;*.csv)数据源?
- 高手:请问如何在局域网中实现多台机器同时访问一个ACCESS数据库?
- 请问应该如何打开数据库才能加快检索速度?
- 请教个网络投票的事情,急。
- ActiveX文档的问题,急!!!
- 请教各位高手,在哪里能得到关于对 Office进行编程的资料,要求是比较深入的
- 怎样按规定格式输出字符串?(太简单了吧?)
- 同步监测客户机屏幕和声频监听(winsock)
- 有谁在用正版的VB!?
SQL2000,不知是否能说得明白点??
比如表名是table_name ,日期字段是fdate
select t1.fdate from
(select distinct fdate from table_name) t1,
(select distinct fdate from table_name) t2
where t1.fdate<t2.fdate
group by t1.fdate
having count(t2.fdate)=1
我用
select * from table_log order by log_time desc limit 2,1 //在我的表中测试过了1.请检查你的 yourdatefield 是否 datetime类型啊?
2.先不要join,简单先试试一张表啦?
datefield肯定是datetime类型的。
可以问一下你用的是什么数据库吗?
TO icevi(按钮工厂) 你的语句可以运行,但是最后出来的只有一个唯一日期,我需要的是每
一个HM对应自己的第二大的日期。所以一定要GROUP BY HM。
select t1.hm,t1.fdate from
(select distinct hm, fdate from table_name) t1,
(select distinct hm,fdate from table_name) t2
where t1.fdate<t2.fdate and t1.hm=t2.hm
group by t1.hm,t1.fdate
having count(t2.fdate)=1
[Microsoft][ODBC SQL Server Driver]超时已过期。
可以问一下你用的是什么数据库吗?
from hx1
inner join yjfyh on
hx1.HM = YJFYH.HM and
hx1.czrq=(select max(czrq) from hx1 where czrq<(select max(czrq) from hx1))
1、在你的语句中having count(t2.fdate)=1是什么意思??
2、第二大的日期取出来了。那么第三大的日期有办法取吗?
这个语句是很慢,要是觉得慢,可能把所有日期排序后生成一个recordset ,然后找第2个记录更快些.你不必坚持一定要用一个SQL语句得出结果.
where t1.fdate<t2.fdate
这样的关联是很慢的.
哪位有更快的办法,请一起来讨论一下.
回头马上加分。