AWS Redshift プロシージャ NULLとの比較のサンプル

環境
AWS Redshift

構文
IF 変数名 IS NULL THEN
RAISE INFO 'xxx’;
END IF;
IF 変数名 IS NOT NULL THEN
RAISE INFO 'xxx’;
END IF;
条件が合致する場合、配下の処理が実行され、if文の処理は終了します。
条件が合致することをtrue(真)ともいいます。
条件が合致しないことをfalse(偽)ともいいます。

サンプルコード

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE OR REPLACE PROCEDURE testA(uid int)
AS $$
DECLARE
strA varchar(20);
BEGIN
select firstname into strA from users
where userid = uid;
IF strA IS NULL THEN
RAISE INFO '123 null';
END IF;
IF strA IS NOT NULL THEN
RAISE INFO '123 not null';
END IF;
END;
$$
LANGUAGE plpgsql;
CREATE OR REPLACE PROCEDURE testA(uid int) AS $$ DECLARE strA varchar(20); BEGIN select firstname into strA from users where userid = uid; IF strA IS NULL THEN RAISE INFO '123 null'; END IF; IF strA IS NOT NULL THEN RAISE INFO '123 not null'; END IF; END; $$ LANGUAGE plpgsql;
CREATE OR REPLACE PROCEDURE testA(uid int) 
AS $$
DECLARE
  strA varchar(20);
BEGIN
  select firstname into strA from users
  where userid = uid;
  
  IF strA IS NULL THEN
    RAISE INFO '123 null';
  END IF;

  IF strA IS NOT NULL THEN
    RAISE INFO '123 not null';
  END IF;
END;
$$
LANGUAGE plpgsql;

説明
is nullで値がnullか確認しています。
is not nullで値がnullでないことを確認しています。

AWS

Posted by arkgame