#c# #sql #tsql #sqlcommand
#c# #sql #tsql #sqlcommand
Вопрос:
есть ли простой способ выбрать все записи, которые находятся между двумя датами. должен ли я использовать datetime
для типа файла или я тоже могу использовать строковый тип. что-то вроде этого :
SELECT * FROM users WHERE datetime_update is between date1 and date2
- по некоторым причинам я использую строковый тип файла, так что это было бы лучше.
я пробую эту команду в своем проекте c #, но она возвращает примечание. где я упускаю понимание?
SELECT user_id, sharj_value, datetime_update
FROM users
WHERE (user_id = 0653193963) AND (datetime BETWEEN '1390/07/12%' AND '1390/07/14%')
и это образец данных в таблице
filed names user_id sharj_value datetime_update
0653193963 60000 1390/7/12 08:00:15
0653193963 40000 1390/7/13 08:18:44
0653193963 40000 1390/7/13 08:20:35
я думаю, что он должен вернуть две последние строки.
Ответ №1:
Попробуйте это..
SELECT user_id, sharj_value, datetime
FROM users
WHERE user_id = 0653193963 AND datetime BETWEEN '1390/07/12 00:00:00' AND '1390/07/14 23:59:59')
Комментарии:
1. Оки .. это должно вам помочь!
Ответ №2:
Для SQL Server этот синтаксис T-SQL должен работать:
SELECT user_id, sharj_value, [datetime]
FROM users
WHERE user_id = 06531939630 AND [datetime] BETWEEN '1390-07-12' AND '1390-07-14'
Также обратите внимание, что в некоторых языках используется year-month-day (например, в Америке), а в других используется year-day-month .
Вы также можете посмотреть на SQL-Server «set dateformat«
Комментарии:
1. это не помогло бы, я тоже меняю имя файла, но снова отмечаю возврат. и это строка, и я заполняю ее сам, поэтому я знаю формат