Использовать преобразованную дату в предложении Where с использованием операторов даты Dynami c - PullRequest
0 голосов
/ 08 мая 2020

Я успешно преобразовал дату, хранящуюся как varchar, в допустимую дату, и теперь мне нужно использовать ее в выражении даты Dynami c в моем предложении Where. К сожалению, я продолжаю получать ошибки или нет возврата. Приведенный ниже код работает, но я не получаю возврата. Если я введу дату stati c, он будет работать, а если я использую «to_date (a.sold_dt, 'YYYYMMDD')» в предложении where, он выйдет из строя.

select
to_date(a.sold_dt,'YYYYMMDD') as Sold_dt,
a.BUYER_ZIP_CD,
b.Statename,
b.dmaname,

COUNT(VIN) VIN_COUNT

from MyTable a
join OtherTable b
on a.Buyer_Zip_cd = b.zipcode

where sold_dt >= (Current_Date() -92)
or sold_dt (between (current_date() -457) and (current_date() - 367))
and sale_type = 'Retail'

group by 1,2,3,4

1 Ответ

0 голосов
/ 08 мая 2020

Я не знаю, работает ли весь ваш синтаксис для используемой вами базы данных. Но это определенно неверно:

where sold_dt >= (Current_Date() -92) or
      sold_dt (between (current_date() -457) and (current_date() - 367)) and
--------------^ -------------------------------------------------------^
      sale_type = 'Retail'

Родители не могут находиться рядом с between в любой базе данных, о которой я знаю.

...