[英]Sql Limit clause based in input Parameter
我一直在嘗試根據來自 Json 文件的輸入參數找到限制子句的解決方案。 當前代碼看起來有點像這樣
With myJsonTable (JsonText)
as (
Select JsonText)
Select * from Data
Where...
Limit
Case
WHEN (Select JSON_VALUE(JsonText, '$."Amount"') From myJsonTable is not null
THEN (Select JSON_VALUE(JsonText, '$."Amount"') From myJsonTable)
ELSE (10000000)
END
我似乎無法找到工作。 我得到的 Output 是
Non-negative integeter value expected in LIMIT clause
有沒有辦法完成 select? 在 Case 子句中的任何地方嘗試不同的 Selects 都會導致同樣的錯誤。
Exasol 只允許在 limit 子句中使用常量表達式,因此無法直接在其中指定引用myJsonTable
的 select 語句。
但是,您可以通過使用類似於SQL 查詢前 5 個結果的方法來解決此問題,而無需使用 LIMIT/ROWNUM/TOP
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.