ホームページ >データベース >mysql チュートリアル >UNION ALL は PostgreSQL の減分精度 SELECT ステートメントをどのように最適化できますか?
効率的なクエリのための UNION ALL の使用
で行を検索しようとするとき精度が減少するテーブルでは、複数の実行は非効率的ですSELECT ステートメントを次々と実行します。代わりに、UNION ALL クエリを利用して複数の SELECT を 1 つの効率的な式に結合することを検討してください。
最適化されたクエリ:
SELECT * FROM image WHERE name = 'name105' AND group_id = 10 UNION ALL SELECT * FROM image WHERE name = 'name105' UNION ALL SELECT * FROM image WHERE group_id = 10 LIMIT 1;
説明:
このクエリは 3 つの SELECT ステートメントを使用しており、それぞれのステートメントのレベルが段階的に低くなります。 precision:
UNION ALL を使用してこれらの SELECT を組み合わせることで、クエリは、1 つのパラメーターのみに基づいている場合でも、最初に一致したものが返されるようになります。
利点:
注:
PostgreSQL バージョン 11 以降では、UNION ALL を使用するときに並列追加の可能性を考慮してください。これは、特定のシナリオではクエリの信頼性に影響を与える可能性があります。詳細については、以下のスレッドを参照してください:
以上がUNION ALL は PostgreSQL の減分精度 SELECT ステートメントをどのように最適化できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。