如何编写查询以获取今天在SQL Server
中的日期数据?
select * from tbl_name where date = <Todays_date>
如何编写查询以获取今天在SQL Server
中的日期数据?
select * from tbl_name where date = <Todays_date>
正确答案将取决于您的datecolumn
的类型。假设它的类型为Date
:
select * from tbl_name
where datecolumn = cast(getdate() as Date)
如果是 DateTime
:
select * from tbl_name
where cast(datecolumn as Date) = cast(getdate() as Date)
看起来 Mitch Wheat的回答并不是sargable,尽管我不确定这是否正确。
请注意:对于左侧进行的DATEDIFF()
(或其他计算)不是Sargable,而将x转换为日期
是。
SELECT *
FROM tbl_name
WHERE date >= cast(getdate() as date)
and date < cast(getdate()+1 as date)
select * from tbl_name where date = cast(getdate() as Date)
对于CAST
,请参见http://msdn.microsoft.com/en-us/library/ms187928.aspx,对于GETDATE()
,请参见https://msdn.microsoft.com/en-IN/library/ms188383.aspx
这对我有效。请检查一下。
SELECT * FROM tbl_name WHERE created_at = cast(Date(Now()) as Date);
select * from tbl_name where date(column_name) = CURDATE();
现在您可以获取今天插入的行