簡體   English   中英

HANA SQL:CASE WHEN 在 DO BEGIN...END 語句中

[英]HANA SQL: CASE WHEN in DO BEGIN ... END statements

有誰知道如何在 DO BEGIN...END 語句中使用 CASE WHEN 表達式?

作品:

WITH something_to_query_on AS (
SELECT 1 AS first_value, 2 AS second_value FROM dummy
UNION
SELECT 4 AS first_value, 3 AS second_value FROM dummy
)
SELECT first_value, second_value
, CASE WHEN first_value > second_value THEN 1 ELSE 0 END AS first_greater_second
FROM something_to_query_on
;

作品:

DO BEGIN
    something_to_query_on = SELECT 1 AS first_value, 2 AS second_value FROM dummy
                            UNION
                            SELECT 4 AS first_value, 3 AS second_value FROM dummy
                            ;
    
    SELECT first_value, second_value
    /*, CASE WHEN first_value > second_value THEN 1 ELSE 0 END AS first_greater_second*/
    FROM :something_to_query_on
    ;
END

不起作用:

DO BEGIN
    something_to_query_on = SELECT 1 AS first_value, 2 AS second_value FROM dummy
                            UNION
                            SELECT 4 AS first_value, 3 AS second_value FROM dummy
                            ;
    
    SELECT first_value, second_value
    , CASE WHEN first_value > second_value THEN 1 ELSE 0 END AS first_greater_second
    FROM :something_to_query_on
    ;
END

錯誤信息:

SQL Error [257] [HY000]: SAP DBTech JDBC: [257] (at 329): sql syntax error: line 10 col 2 (at pos 329)
  SAP DBTech JDBC: [257] (at 329): sql syntax error: line 10 col 2 (at pos 329)

感謝您的幫助。

在 Reinis Verbelis 回答后,我檢查了另一個 IDE。似乎錯誤只出現在 DBeaver 中,但在 Eclipse 中沒有出現在 HANA Modeler 中。將在他們的 Git 回購中提出問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM