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

MySQL関数からテーブルを返す方法

    MySQLのユーザー定義関数に関するドキュメント
    戻り値は、タイプ{STRING|INTEGER|REAL|DECIMAL}の値のみです。

    CREATE [AGGREGATE] FUNCTION function_name RETURNS {STRING|INTEGER|REAL|DECIMAL}
        SONAME shared_library_name
    

    selectを読みたい場合 結果セットprocedureを定義する必要があります functionではありません 。

    DELIMITER //
    
    DROP PROCEDURE IF EXISTS myProcedure //
    
    CREATE PROCEDURE 
      myProcedure( id INT )
    BEGIN  
       SELECT * FROM board
         -- add where condition if required
        WHERE Col_name = id
       ;  
    END 
    //
    
    DELIMITER ;
    

    そして、次のようなプロシージャを呼び出すことができます

    call myProcedure( 6 )
    

    これにより、プロシージャで使用されるステートメントに基づいて暗黙のオブジェクトが返されます。




    1. SSH経由でローカルコンピュータにmysqldump

    2. MySQLのロケールの完全なリスト

    3. Oracle-SQL開発者からスクリプトを生成する方法

    4. OracleのTRANSLATE(…USING)関数