Если вы используете поиск Eclipse, вы можете включить опцию «DOTALL», чтобы сделать «.». сопоставить любой символ, включая разделители строк: просто добавьте «(? s)» в начале строки поиска. Пример:
(?s).*<FooBar>
Даты не имеют форматов ... это означает, что вы сохранили его как varchar
, что видно из слова at
в вашей строке.
Вы хотите только часть date ... replace(right(left(RESV_Center_date,11),10),'.','/')
Вот он в действии:
declare @RESV_CENTER_Date varchar(64) = '[2017.11.17 AD at 10:23:08 GMT]'
select replace(right(left(@RESV_CENTER_Date,11),10),'.','/')
--or if the brackets aren't there
set @RESV_CENTER_Date = '2017.11.17 AD at 10:23:08 GMT'
select replace(left(@RESV_CENTER_Date,10),'.','/')
So для вашего предложения where
... который не является SARGable ...
where cast(replace(right(left(RESV_CENTER_Date,11),10),'.','/') as date) between '2017-05-05' and '2017-06-06'