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

ResultSetをPostgresql関数に渡す

    カーソルを使用できます 、しかし、最小値を計算するには非常に実用的ではありません。

    一時テーブルを使用します そのために、動的SQLで使用するテーブル名を渡します :

    CREATE OR REPLACE FUNCTION f_min_id(_tbl regclass, OUT min_id int) AS 
    $func$
    BEGIN
    
    EXECUTE 'SELECT min(id) FROM ' || _tbl
    INTO min_id;
    
    END  
    $func$ LANGUAGE plpgsql;
    

    電話:

    CREATE TEMP TABLE foo ON COMMIT DROP AS
    SELECT id, name
    FROM   users
    LIMIT  50;
    
    SELECT f_min_id('foo');
    

    主なポイント

    ->SQLfiddleデモ



    1. oci_pconnectを使用するときに、phpセッションが同じoracleセッションを取得することを確認します

    2. SQL CURSORを使用するときに、これらの間違いを犯しますか?

    3. Laravel5.4は間違ったCOM_STMT_PREPARE応答サイズを提供します

    4. PostgreSQL高可用性インストールPatroni