ホームページ >データベース >mysql チュートリアル >データベース関数によって返されたレコードから列を効率的に抽出するにはどうすればよいですか?
関数によって返されたレコード内で連結された列
複数の列を返す関数を使用してテーブルを結合する場合、潜在的なデータを考慮することが重要です連結の問題。この課題に対処するために、返されたレコードから個々の列を抽出するさまざまな方法を検討してみましょう。
行を分解するための一般的な方法
関数によって返された行を分解するには、次のようにします。次の構文を使用します:
SELECT * FROM function_name(arguments);
Postgres 9.3 および新しい: JOIN LATERAL を使用した結果の分解
Postgres 9.3 以降の場合、JOIN LATERAL を利用して結果をより明確に分解できます:
SELECT ... FROM table_name a JOIN LATERAL function_name(a.accountid, '2014-08-12') f WHERE ...
Postgres 9.2 または旧: を使用した結果の分解サブクエリ
以前の Postgres バージョンでは、サブクエリを使用して結果を分解できます。
SELECT ... FROM ( SELECT a.*, function_name(a.accountid, '2014-08-12') AS rec FROM table_name a WHERE ... ) a
結果を分解するためのベスト プラクティス
以上がデータベース関数によって返されたレコードから列を効率的に抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。