我有一个 SQL 数据库,其中有一个 DataType DateTime 列。现在我想要具有特定日期持续时间的数据。例如,我想要从 01/09/2012 到 10/09/2012 的数据,有什么办法吗?
问问题
250 次
2 回答
0
是的,试试这个:
SELECT *
FROM YourTable
WHERE Date >= '2012-09-01 00:00:00' AND Date < '2012-09-11 00:00:00'
于 2012-09-11T11:39:07.807 回答
0
首先创建一个从 DateTime 中删除时间的函数。我打电话给我的 dbo.DateOf
CREATE FUNCTION [dbo].[DateOf](
@DateAndTime DateTime
)
RETURNS DateTime
AS
begin
RETURN Cast(FLOOR(Cast(@DateAndTime as Float)) as DateTime)
end
现在您将能够进行这样的查询并从包含时间的 Datetime 列中获取结果 - 这对人类来说很有意义
SELECT * FROM YourTable
where dbo.Dateof(datecolumn) >= '2012-09-01' and dbo.DateOf(datecolumn) <= '2012-09-11'
于 2012-09-12T08:34:37.413 回答