where
. के साथ यह आपकी क्वेरी है खंड:
select value1, to_date(value1,'DD.MM.YYYY')
from variableindex
where value1 is not null and
value1 <> '0' and
creation_time_ > to_timestamp('20140307', 'YYYYMMDD') and
to_date(value1 'DD.MM.YYYY') < to_date('20140301', 'YYYYMMDD')
order by 2;
Oracle where
. में क्लॉज़ के प्रसंस्करण के क्रम की गारंटी नहीं देता है . तो, value <> '0'
अंतिम शर्त से पहले चलने की गारंटी नहीं है। यह SQL सर्वर पर एक बड़ी समस्या होती है। एक समाधान case
. का उपयोग करना है कथन:
select value1,to_date(value1, 'DD.MM.YYYY')
from variableindex
where value1 is not null and
value1 <> '0' and
creation_time_ > to_timestamp('20140307', 'YYYYMMDD') and
(case when value <> '0' then to_date(value1, 'DD.MM.YYYY') end) <
to_date('20140301', 'YYYYMMDD')
order by 2;
बल्कि बदसूरत, लेकिन यह आपकी समस्या का समाधान कर सकता है।