特定の値が指定されている場合、追加のWHERE
-Parameterを適用します。私たちは現在SAP-Hanaに取り組んでいますが、厳密なストアドプロシージャプログラミングをこのプラットフォームに適用することができます。任意のヘルプは非常に高く評価されています!コード:ストアドプロシージャの条件付きWHERE句
PROCEDURE test (
IN id integer,
IN testVal VARCHAR(20) DEFAULT '*',
out ex_return DB-SCHEME
)
LANGUAGE SQLSCRIPT
SQL SECURITY INVOKER
--DEFAULT SCHEMA <default_schema_name>
READS SQL DATA AS
BEGIN
ex_return =
SELECT
L."ID",
LW."ID"
FROM DB1 L
INNER JOIN DB2 LW
ON L."id" = LW."id"
WHERE
L."id" = :id
AND LW."testVal" LIKE :testVal -- this one only, if :testVal != '*'
;
END
私はまだ試したことがありますか?私はCONCAT
SELECT
を計算して、WHERE
(IF
-Conditions)と計算しようとしましたが、EXECUTE
-Commandですが、SAP HANAがサポートしていないようです。正確にあなたがAPPLY_FILTER機能を使用することはできませんなぜWHERE ... CASE :wert <> '*' THEN ... END
あなたは... 'と考えており、(LW "testValという" LIKE:。testValというOR:= testValという「* ') ' –