日期:2014-05-18  浏览次数:20962 次

C# sql 查询时间
数据库里的时间 格式是年-月-日 时:分:秒 我想获取是某人在某日期的所有数据。比如我想看看 用户Id是 “userId” 日期是2012-3-2 这一天所有记录有多少条 查询语句该怎么写

------解决方案--------------------
select * from XXX表 where userID=XXX and convert(varchar,时间字段名字,23)= '2012-3-2'
------解决方案--------------------
oracle sql:
select * from t_co_route c where trunc(CREATETIME)=to_date('2012-3-2','yyyy-MM-dd');


sqlserver sql:
同楼上
------解决方案--------------------
Oracle 查询当天、当周、当月和当季度的所有记录
Oracle 
字段类型为varchar2,格式要与格式化的样式匹配 
当天 
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'dd')=to_char(sysdate,'dd') 
当周 
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'iw')=to_char(sysdate,'iw') 
当月 
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'mm')=to_char(sysdate,'mm') 
当季度 
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'q')=to_char(sysdate,'q') 

字段类型为date 
当天 
select * from 表名 where to_char(字段名,'dd')=to_char(sysdate,'dd') 
当周 
select * from 表名 where to_char(字段名,'iw')=to_char(sysdate,'iw') 
当月 
select * from 表名 where to_char(字段名,'mm')=to_char(sysdate,'mm') 
当季度 
select * from 表名 where to_char(字段名,'q')=to_char(sysdate,'q') 


SQL 
当天 
select * from 表名 where DATEPART(dd,字段名) = DATEPART(dd, GETDATE()) and DATEPART(mm, 字段名) = DATEPART(mm, GETDATE()) and DATEPART(yy, 字段名) = DATEPART(yy, GETDATE()) 
当周 
select * from 表名 where DATEPART(wk, 字段名) = DATEPART(wk, GETDATE()) and DATEPART(yy, 字段名) = DATEPART(yy, GETDATE()) 
当月 
select * from 表名 where DATEPART(mm, 字段名) = DATEPART(mm, GETDATE()) and DATEPART(yy, 字段名) = DATEPART(yy, GETDATE()) 
当季度 
select * from 表名 where DATEPART(qq, 字段名) = DATEPART(qq, GETDATE()) and DATEPART(yy,字段名) = DATEPART(yy, GETDATE())