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

テーブル関数からN列を返す

    あなたが求めているのは、

    を使用しているときにo/pに複数の行が表示されることだと思います。

    selectステートメントの関数。

    次のように関数を作成した場合:

    create or replace function get1job
    
    (id in varchar2)
    
    return varchar2 is
    
    tittle jobs.JOB_TITLE%type;
    
    begin
    
    select job_title  into tittle from jobs where job_id=id;
    
    return tittle;
    
    end get1job;
    

    選択ステートメントで使用します。

    私は書きます:

    select get_job('AD_PRES') from dual;
    

    1行だけ取得します

    私が書いた場合:

    select get_job('AD_PRES') from jobs;
    

    表示される行数は、テーブルジョブの行数と同じになります。



    1. 条件でエイリアスcoalesceを使用する:coalesce(max(case when value then value)asエイリアス

    2. 列ごとに句読点を無視するようにOrderByを設定します

    3. 価格比較のためのMysqlクエリ

    4. Laravel4クエリビルダー-複雑な左結合