У меня есть поле в базе данных с форматом DateTime
.сравнить текущую дату в базе данных
Я хочу, чтобы сделать запрос, чтобы извлечь все строки, которые имеют этот день, но это поле в базе данных имеет следующий формат: 2014-11-07 21:21:22.733
, я не хочу, чтобы проверить часы, секунды и минуты, мне нужно проверьте только день.
Я сделал это:
string query = @"SELECT *
FROM Orders
WHERE PrintTime is NULL
AND CONVERT(DATE, Datelogged) = @Datelogged
";
command.Parameters.AddWithValue("@Datelogged", DateTime.Today);
, но я продолжал иметь пустые результаты.
Я не вижу причины, которая не работает. Можете ли вы запустить его непосредственно в базе данных (без C#), если он работает? – gunr2171
@ gunr2171 Когда я бегу прямо, я получил пустые результаты, я делаю это: 'SELECT * FROM Orders WHERE PrintTime NULL AND CONVERT (DATE, Datelogged) = '2014-07-11'' –
Попробуйте (в sql direct), используя 'CONVERT (DATE, Datelogged) между '2014-07-11' и '2014-07-12'. Это не ответ, но это может помочь отладить это. – gunr2171