如何选取多个记录中的一条特定记录? ( 积分: 100 )

  • 主题发起人 主题发起人 evanou
  • 开始时间 开始时间
E

evanou

Unregistered / Unconfirmed
GUEST, unregistred user!
由于字段code值相同的记录都有2条以上,该如何才能选择datex最新的那一条记录呢?<br>表的内容如下:<br>code price_u sheetno datex&nbsp;&nbsp;&nbsp;<br>FBB4001 0.15 605000517 2006-5-4&nbsp;11:03<br>FBB4001 0.13 604001640 2006-4-11&nbsp;15:28<br>FBB5001 0.18 701002061 2007-1-17&nbsp;14:23<br>FBB5001 0.17 701001178 2007-1-10&nbsp;10:10<br>FBB5002 0.20 701004121 2007-1-3&nbsp;18:30<br>FBB5002 0.18 409003465 2004-9-28&nbsp;9:23<br>FBB6003 0.18 701001178 2007-1-10&nbsp;10:10<br>FBB6003 0.20 701002061 2006-1-17&nbsp;14:23
 
select&nbsp;*&nbsp;from&nbsp;TableName&nbsp;where&nbsp;datex&nbsp;in&nbsp;(select&nbsp;max(datex)&nbsp;from&nbsp;TableName&nbsp;group&nbsp;by&nbsp;code)
 
select&nbsp;*&nbsp;from&nbsp;TableName&nbsp;where&nbsp;datex&nbsp;in&nbsp;(select&nbsp;max(datex)&nbsp;from&nbsp;TableName&nbsp;group&nbsp;by&nbsp;[red]code[/red])
 
楼上的,要是2条datex相同的话,你的查询就有问题了
 
2条datex相同的话就显示两条,否则你想显示哪条?
 
我的意思是说datex相同,但是time不同
 
如果是这样的话,只要2条datex相同的话,查询就会有问题
 
设置字段时为什么日期和时间要分开呢?估计用的不是&nbsp;MSSQL。其实只要将日期和时间合并即可解决:<br>select&nbsp;*&nbsp;from&nbsp;TableName&nbsp;where&nbsp;datex+time&nbsp;in&nbsp;(select&nbsp;max(datex+time)&nbsp;from&nbsp;TableName&nbsp;group&nbsp;by&nbsp;code)<br>以上&nbsp;datex+time&nbsp;不同数据库系统有不同的算法。
 
有是老生常谈的问题.....SQL语句不熟悉.......多多看看书吧
 
select&nbsp;max(strtodatetime('''+datetostr(datex)+'''+time))&nbsp;from&nbsp;tabelname<br><br>time&nbsp;是字符类型的
 
接受答案了.
 

Similar threads

I
回复
0
查看
648
import
I
I
回复
0
查看
855
import
I
I
回复
0
查看
695
import
I
I
回复
0
查看
548
import
I
后退
顶部