我正在使用PHP和SQL Server进行项目。
店主希望我设计页面只显示在同一天注册的用户
即,如果今天11-3-2011我只想显示所有在11-3-2011注册的用户
表格是:
id username date
1 john 11\3\2011
2 sara 11\3\2011
3 john 5\1\2011
4 kreem 1\2\2011
我是通过mysql制作的
where DATE_ADD( items.created_date, INTERVAL 1 DAY ) > NOW()
此代码电缆显示的数据仅在同一天插入,这意味着如果今天10-4-2011它将仅显示插入10-4-2011的数据,如果我今天15-4-2011并且im剂量不插入什么东西它不会显示任何东西,我如何在sql server中构建这样的代码?希望我的问题清楚明白
答案 0 :(得分:5)
select id, userName
from YourTable
where CAST(date AS DATE) = CAST(GETDATE() AS DATE)
函数GETDATE()返回当前日期和时间。
CAST(column as TYPE)会将DateTime威胁为日期以省略时间差异
答案 1 :(得分:5)
获取今天的日期记录:
select * from tablename where date column between '2011-10-25 00:00:00' And '2011-10-25 23:59:59'
答案 2 :(得分:2)
select * from yourtable where date = CONVERT(VARCHAR(20),GETDATE(),101)
//希望这对获取当前日期值有所帮助..
答案 3 :(得分:1)
此查询仅比较今天的日期部分,忽略时间。它适用于MS SQL Server,我不确定其他实现:
select *
from YourTable
where convert(datetime, floor(convert(float, GETDATE()))) = [date]
答案 4 :(得分:0)
select *
from YourTable
where
[date] >= '20110311' and
[date] < '20110312'
如果你今天想要(总是),你可以使用这个
select *
from YourTable
where
[date] >= dateadd(d, datediff(d, 0, getdate()), 0) and
[date] < dateadd(d, datediff(d, 0, getdate())+1, 0)
过去10天。
select *
from YourTable
where
[date] >= dateadd(d, datediff(d, 0, getdate())-9, 0)
编辑1 查询样本数据和结果
表格定义
create table users
(name varchar(20),
user_register_date datetime)
数据
insert into users values ('user today', getdate())
insert into users values ('user yesterday', getdate()-1)
insert into users values ('user 9 days ago', getdate()-9)
insert into users values ('user 10 days ago', getdate()-10)
查询
select *
from users
where user_register_date >= dateadd(d, datediff(d, 0, getdate())-9, 0)
结果
name user_register_date
-------------------- -----------------------
user today 2011-04-14 08:29:28.407
user yesterday 2011-04-13 08:29:28.410
user 9 days ago 2011-04-05 08:29:28.410
答案 5 :(得分:0)
SELECT * from YourTable
WHERE cast(convert(varchar(10),yourdate,101) as datetime) =
cast(convert(varchar(10),[any day you want],101) as datetime)
希望这会有所帮助。只需用日期或日期时间值替换[您想要的任何一天]
CAST函数等效于CONVERT函数,但convert允许一些格式化选项。在我的例子中,我只是缩短了约会的时间。