2016-03-22 5 views
0

У меня есть формат даты. Ниже мой запрос. Выполняется запрос, но без результата.запрос не дает желаемого результата

SELECT a,b,c,DATE_FORMAT(Date_Rx_Written,'%m-%d-%Y') AS 'Date Rx Written',e,f,g,h 
FROM ksclient1003.prescriber_view 
WHERE DATE_FORMAT(Date_Rx_Written,'%m-%d-%Y') 
BETWEEN coalesce(NULLIF('11-11-2008',' '),Date_RX_Written) 
AND coalesce(NULLIF('11-11-2016',' '),Date_RX_Written) 
AND a=coalesce(NULLIF('Genene Radden',' '),a) 
AND b=coalesce(NULLIF('Filled',' '),b); 

если я исполняю в части он работает нормально, как,

SELECT a,b,c,DATE_FORMAT(Date_Rx_Written,'%m-%d-%Y') AS 'Date Rx Written',e,f,g,h 
FROM ksclient1003.prescriber_view; 

или просто за исключением даты фильтра.

SELECT a,b,c,DATE_FORMAT(Date_Rx_Written,'%m-%d-%Y') AS 'Date Rx Written',e,f,g,h 
FROM ksclient1003.prescriber_view 
WHERE a=coalesce(NULLIF('Genene Radden',' '),a) 
AND b=coalesce(NULLIF('Filled',' '),b); 

Я пробовал использовать другой подход, как изменение формата в каждом месте, где я просто передаю Date_RX_Written.

Примечание:

+0

попробовать 'ВЫБРАТЬ а, б, в, DATE_FORMAT (Date_Rx_Written, '% m-% d-% Y ') AS' Date Rx Written ', e, f, g, h FROM ksclient1003.prescriber_view WHERE (DATE_FORMAT (Date_Rx_Written,'% m-% d-% Y ') МЕЖДУ объединением (NULLIF ('11 -11) -2008 ',' '), Date_RX_Written) И коалесцирует (NULLIF ('11 -11-2016 ',' '), Date_RX_Written)) И a = коалесцирует (NULLIF (' Genene Radden ',' '), a) И b = коалесцирует (NULLIF (' Filled ',' '), b); 'положить предложение BETWEEN в скобках –

+0

@RajenRaiyarela не повезло ... –

ответ

0

Попробуйте

SELECT 
    a, b, c, 
    DATE_FORMAT(Date_Rx_Written,'%m-%d-%Y') as 'Date Rx Written', 
    e,f,g,h 
FROM ksclient1003.prescriber_view 
WHERE 
    Date_Rx_Written BETWEEN '2008-11-11' AND '2016-11-11' 
    AND a='Genene Radden' 
    AND b='Filled'; 
+0

не повезло .. и я хочу обрабатывать нулевые значения, поэтому с коалесценцией это не полезно для меня. –

0

нашел решение ..

select a,b,c,DATE_FORMAT(Date_Rx_Written,"%m-%d-%Y") as 'Date Rx Written' ,d,e,f,g from ksclient1003.prescriber_view WHERE Date_Rx_Written BETWEEN coalesce(NULLIF(STR_TO_DATE('31-12-2014' , "%d-%m-%Y"),' ')) and coalesce(NULLIF(STR_TO_DATE('31-12-2016' , "%d-%m-%Y"),' ')) and a=coalesce(NULLIF('Genene Radden',' '),a) and b=coalesce(NULLIF('Filled',' '),b); 
Смежные вопросы