У меня есть таблица в оракуле, где хранятся данные перфорации. Столбец «punchtime» имеет данные как varchar2 и время сохраняется (например, 20:30:00). когда я хочу сортировать данные по punchtime Я использую этот запросПреобразование во времени в Oracle
select * from punch order by to_date(punchtime,'hh24:mi:ss')
Это работает отлично. Но ниже запрос не работает
select * from punch where punchtime = to_date('01:00:00','hh24:mi:ss')
Это показывает «не действительный месяц»
Может кто-нибудь, пожалуйста, помогите мне. Я должен запросить этот столбец.
Спасибо вам столько – Shanna
Да; но для одного значения, почему бы просто не сравнить два строковых значения напрямую, а не преобразовывать их в даты? Даже для диапазона они могут сравниваться как строки, так как порядок varchar2 будет таким же, как и порядок даты (времени) в этом случае (во всех локалях, насколько мне известно). –
Спасибо, да .. вместо этого это можно сделать напрямую, но это было бы ключевым решателем для его ошибки atleast :) – ajmalmhd04