Хотя CMS верна , что передача строк в метод разбора, как правило, небезопасна, новая спецификация ECMA-262 5th Edition (aka ES5) в разделе 15.9.4.2 предлагает что Date.parse()
фактически должны обрабатывать даты в формате ISO. В старой спецификации не было такого требования. Конечно, старые браузеры и некоторые современные браузеры по-прежнему не обеспечивают эту функциональность ES5.
Ваш второй пример не является неправильным. Это указано в UTC, что подразумевается Date.prototype.toISOString()
, но отображается в вашем локальном часовом поясе.
Используйте функцию преобразования, например:
select * from data
where dateVal < convert(datetime, '01/01/2008', 103)
, Где стиль преобразования (103) определяет формат даты для использования.
Несколько способов выполнить это, но знать, что Ваша опция DB date_format & date_order настройки опции могли влиять на входящий формат:
Select
cast('2008-09-16' as date)
convert(date,'16/09/2008',103)
date('2008-09-16')
from dummy;
Вот хороший справочник по различным форматам, которые вы можете использовать в отношении даты: