我试图从当前日期只有在这里数据库中获取的记录是我试图BU从表中获取任何记录查询:通过今天(当前)日期显示数据的SQL查询?
SELECT *
FROM Transactions
WHERE transaction_date = GETDATE();
我试图从当前日期只有在这里数据库中获取的记录是我试图BU从表中获取任何记录查询:通过今天(当前)日期显示数据的SQL查询?
SELECT *
FROM Transactions
WHERE transaction_date = GETDATE();
只是比较日期部分
Select *from Transactions
WHERE
CONVERT(char(10), transaction_date ,126)=CONVERT(char(10), getdate(),126);
将* DATETIME转换为'DATE'而不是转换为**字符串将会*更好*总是使用**最合适的**数据类型 - 不要总是把所有东西都转换成一个字符串,因为它很简单并且工作正常..... –
存储在一个变量的日期和CONCAT它在查询
见下图:
var currentDate = DateTime.Now.ToString("yyyy-MM-dd");
query = "select * from table where Date = " + currentDate;
它在“yyy-MM-dd”附近显示语法错误 –
您可以删除/复位时间为00:00,这将允许进行比较今天。
select DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0)
您可以定义今天的日期开始变量和这样结束:
declare @TodayStart datetime = getdate()
declare @TodayEnd datetime = getdate()
set @TodayStart = DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0) -- example: 2017-08-20 00:00:00.000
set @TodayEnd = DATEADD(ss, -1, DATEADD(dd, 1, @TodayStart)) -- example: 2017-08-20 23:59:59.000
所以你的查询来获取今天的日期范围内的所有交易将成为:
Select *from Transactions
WHERE transaction_date between @TodayStart AND @TodayEnd
它比较不仅仅是日期,还有时间部分。我不认为你会有日期+时间的确切交易。尝试比较刚才的日期部分不是日期和时间 –
那么我应该如何修改这个查询先生你能帮我解决吗? –