日期型字段的一个问题:此字段值由年月日时分秒组成,我怎么提取满足年月日条件的记录? (50分)

  • 主题发起人 主题发起人 SevenOrient
  • 开始时间 开始时间
S

SevenOrient

Unregistered / Unconfirmed
GUEST, unregistred user!
表:Table1
字段:SellTime 值:Jul 24 2002 12:02AM
Select * from Table1 where SellTime like '%2002-07-24%'???不行!
那。。。怎么办呢?
 
如果是ORACLE数据库可以使用Trunc函数,例如 select * from table1 where trunc(selltime) = '2002-08-16'
如果是SQLSERVER数据库可以使用convert函数, 例如 select * from table1 where convert(char(10), selldate, 102) = '2002-08-16'
但是这样效率可能较低,可以使用select * from table where selltime >= '2002-08-16' and selltime < '2002-08-17'
 
我用的是Sybase,我要统计今天卖的商品的总销售额,不能selltime>'' and <''
那我还要计算明天的日期?
 
计算明天日期可以使用dateadd(day, 1, @d) 函数, 不知道sybase是否有该函数, sybase的语法和SQLSERVER很相似
 
谢谢,我Sybase 表SellTime字段内容是:“ Jul 24 2002 12:02AM”
请问用
Select * from Table1 where SellTime>'2002-07-24' and SellTime<dateadd('2002-07-24',1,@d)
语句能查询出‘2002-07-24’这天的记录来吗?
这个语句忽略了时分秒。
Select * from Table1 where SellTime>'2002-07-24' and SellTime<'2002-07-24'
这条语句查讯出来是‘2002-07-24’这天的记录?
是不是应该是>=呀?

 
查询2002-7-24数据的正确写法是:
Select * from Table1 where SellTime>='2002-07-24' and SellTime<dateadd(day, 1, '2002-07-24')
 
谢谢~~~
 
后退
顶部