sql >> データベース >  >> RDS >> PostgreSQL

WHEREパラメータをPostgreSQLViewに渡しますか?

    セット戻り関数を使用できます:

    create or replace function label_params(parm1 text, parm2 text)
      returns table (param_label text, param_graphics_label text)
    as
    $body$
      select ...
      WHERE region_label = $1 
         AND model_id = (SELECT model_id FROM models WHERE model_label = $2)
      ....
    $body$
    language sql;
    

    次に、次のことができます:

    select *
    from label_params('foo', 'bar')
    

    ところで:よろしいですか:

    AND model_id = (SELECT model_id FROM models WHERE model_label = $2)
    

    model_labelの場合 が一意(または主キー)でない場合、最終的にエラーがスローされます。おそらく必要なもの:

    AND model_id IN (SELECT model_id FROM models WHERE model_label = $2)
    


    1. 複数の列のチェック制約

    2. ADFS 2.0を使用して、SQL Serverに対して特定のユーザーを認証できますか?

    3. MySQLで特定の日付の月末日を見つける方法

    4. 条件付きJOINステートメントSQLServer