2010-01-06 3 views
0

У меня есть таблица с мерами и время, когда эти меры были приняты в следующем виде: MM/DD/YYYY HH: MI: SS AM. У меня есть меры в течение многих дней, начинающихся в то же время каждый день. Данные - это минута за минуту, поэтому в основном секунды всегда = 0. Я хочу выбрать только меры в течение первых 5 минут каждого дня. Я бы использовал оператор where, но условие было бы только на минутах и ​​отметить, что существует способ сделать это? БлагодаряSQL простой выбор строк по времени

+2

iracema, вам обязательно нужно вернуться и рассмотреть ответы на ваши вопросы. Например, это: http://stackoverflow.com/questions/1940579/sql-inner-join-on-select-statements Из ваших комментариев это похоже на то, что решение сработало для вас, но вы никогда не проверяли его как решение. Все, что вам нужно сделать, - нажать на серый галочку, чтобы принять ответ. –

ответ

0

Вы могли бы попробовать что-то вроде этого:

SELECT * FROM SomeTable 
WHERE 
DATEPART(hh, timestamp_col) = 0 AND -- filter for first hour of the day 
DATEPART(mm, timestamp_col) <= 5 -- filter for the first five minutes 

Осторожно! 0 означает полночь. Если ваш «первый час» на самом деле составляет 8 или 9 часов утра, тогда вы должны заменить 0 на 8 или 9.

Смежные вопросы