Вот моя таблица

T_idx          T_Tag         T_Date  
1              x             2014-03-15 23:58:00.000
2              y             2014-03-15 23:57:00.000
.               .                  .
.
.               .                  .
.
555            xy            2014-03-15 5:10:00.000

Из приведенной выше таблицы я хочу видеть данные с 5:30 до 6:30 каждый день.

Не могли бы вы предложить мне запрос для получения данных.

0
venkat 16 Мар 2014 в 01:09

2 ответа

Лучший ответ

В SQL Server 2005 это можно сделать так:

select * from mytable 
where convert(datetime, convert(char(5), T_Date, 108)) >= '5:30'
and convert(datetime, convert(char(5), T_Date, 108)) <= '6:30'

В SQL Server 2008 и более поздних версиях вы можете просто привести его к типу данных time:

select * from mytable 
where convert(time, T_Date) >= '5:30'
and convert(time, T_Date) <= '6:30'
0
Szymon 16 Мар 2014 в 01:26
Создал «.Bat», используя приведенный выше код и запуская задачу расписания (панель управления) каждый день, но файл работает непрерывно даже после выполнения результата. Пожалуйста, найдите приведенный ниже код в файле bat sqlcmd -q "Выберите 1000 лучших из моей таблицы, где convert(datetime, convert(char(5), T_Date, 108)) >= '5:30' и convert(datetime, convert( char(5), T_Date, 108)) <= '6:30' порядок по T_Date DESC" -oF:\export\export.txt -h-1-s";" exit Мне нужно остановить выполнение файла «.BAT» после завершения вышеуказанной задачи, помогите мне остановить в автоматическом режиме
 – 
venkat
17 Мар 2014 в 00:07
Правильно ли он выбрал записи? В Stack Overflow вы должны задать одну проблему в одном вопросе. Вам будет лучше создать новый вопрос для вашей проблемы с файлом .bat.
 – 
Szymon
17 Мар 2014 в 00:14
1
Да правильно сделал!!!! большое спасибо !!! Я создам новый вопрос для проблемы с файлом .BAT.
 – 
venkat
17 Мар 2014 в 00:22

Попробуй это

SET @start_date = DATEADD(minutes,30,DATEADD(hour, 5, DATEDIFF(DAY, 2, GETDATE())))
SET @end_date = DATEADD(hour, -1, @start_date)

SELECT 
    T_idx, T_Tag
FROM 
    YourTable
WHERE
    T_Date BETWEEN @start_date AND @end_date 
0
pas 16 Мар 2014 в 01:29