Недостающее ключевое слово Oracle SQL - PullRequest
0 голосов
/ 28 января 2020

У меня есть этот запрос SQL, и я получаю ошибку "MISSING KEYWORD".

SELECT SUM(CASE WHEN DUECD = 'PRI' THEN DUEAMT ELSE '0') AS LATESTPRIN, SUM(CASE WHEN DUECD != 'PRI' THEN DUEAMT ELSE '0') AS LATESTINT FROM LLDUEDET WHERE STARTDT = TO_DATE('2020-01-20', 'YYYY-MM-DD')

В чем моя ошибка? Я пытался отладить это.

Ответы [ 2 ]

2 голосов
/ 28 января 2020

Добавление END в скобках должно быть достаточно:

SELECT
  SUM(CASE WHEN DUECD = 'PRI' THEN DUEAMT ELSE '0' END) AS LATESTPRIN,
  SUM(CASE WHEN DUECD != 'PRI' THEN DUEAMT ELSE '0' END) AS LATESTINT
FROM
  LLDUEDET
WHERE
  STARTDT = TO_DATE('". $LatestDate ."', 'YYYY-MM-DD')
0 голосов
/ 28 января 2020

Я не уверен насчет вашего кодового блока ниже

TO_DATE(**’”.$LatestDate.”’**

но, возможно, у вас есть кое-что о том, что я не знаю.

В чем я уверен, так это в том, что ваши заявления по делу нуждаются в конце. См. ниже.

SELECT 
SUM(
    CASE WHEN DUECD = 'PRI' 
        THEN DUEAMT 
        ELSE '0' 
    END) 
AS LATESTPRIN, 
SUM(
    CASE WHEN DUECD != 'PRI' 
        THEN DUEAMT 
        ELSE '0'
    END) 
AS LATESTINT FROM LLDUEDET 

WHERE STARTDT = TO_DATE('". $LatestDate ."', 'YYYY-MM-DD')
...