У меня есть DataTable Exasol с колонки, которая выглядит следующим образом:Exasol SQL TIMESTAMP запрос
2016-10-25 08:01:36.0
2016-10-25 08:30:09.0
2016-10-25 09:00:15.0
2016-10-26 08:02:38.0
2016-10-26 10:00:44.0
2016-10-27 10:00:44.0
тип данных этого столбца TIMESTAMP. Теперь я хочу указать SQL-запрос, который показывает мне все строки, где TIME похоже до 12:00:00. Независимо от того, какова дата, (только время имеет значение), и отделяйте их от 12:00 до 12:00. (было бы неплохо, если бы я мог сказать что-то вроде «между 8 и 12» и «от 12 до 18»).
Заявления, как это:
SELECT * FROM MySCHEMA.MyTable WHERE entryTime < '%12:00:00.%';
SELECT * FROM MySCHEMA.MyTable WHERE entryTime BETWEEN '%08:00:00.%' AND '%12:00:00.%';
не работают. Я получаю сообщение об ошибке:
Исключение данных - недопустимое значение для токена формата YYYY; Значение: «% 12: 00: 00.%» Формат: «ГГГГ-ММ-ДД HH24: MI: SS.FF6»
так есть способ решить эту проблему, поэтому я могу выбрать период времени независимо от того, какова дата?
'%' является подстановочным символом 'LIKE', для типов символьных данных. – jarlh
Не знаю об Exasol, но в стандартном SQL это будет 'CAST (entryTime AS TIME) BETWEEN TIME '08: 00: 00 'И TIME '12: 00: 00'' – dnoeth
Спасибо за подсказку @dnoeth. К сожалению, Exasol этого не поддерживает. Я найду работу. – BlainTheMono