ホームページ > データベース > mysql チュートリアル > 複数のデータベースに同時にクエリを実行してデータを取得するにはどうすればよいですか?

複数のデータベースに同時にクエリを実行してデータを取得するにはどうすればよいですか?

DDD
リリース: 2024-12-07 14:42:13
オリジナル
1005 人が閲覧しました

How Can I Query Multiple Databases Simultaneously to Retrieve Data?

複数のデータベースの同時クエリ

複数のデータベースにわたるデータへのアクセスは、特に複数のデータベースにまたがる特定の情報をクエリする場合、複雑なタスクになる可能性があります。

シナリオ

それぞれが異なる WordPress サイトを表す、複数の個別の WordPress データベースがある状況を考えてみましょう。機能を更新するには、各 WordPress インスタンスのアクティブなプラグインのリストをクエリする必要があります。アクティブなプラグインは、WHERE 句を使用して「wp_options」テーブルに保存されます。

WHERE option_name = 'active_plugins'
ログイン後にコピー

チャレンジ

課題は、すべてのデータベースからアクティブなプラグイン情報を取得して表示することにあります。それは単一の SQL 結果として返されます。 Database.tablename 構文はわかっていますが、複数のデータベースに WHERE ステートメントを適用する方法を決定する方法は依然として問題です。

解決策

複数のデータベースを同時にクエリするには、UNION を使用します。オペレーターを雇用することも可能です。 UNION 演算子は、複数の SELECT ステートメントを 1 つの結果に結合します。 UNION 演算子を使用すると、各データベースの結果を 1 つの統合された SQL 結果にシームレスにマージできます。

次の SQL クエリは、これを実現する方法の例です。

SELECT option_value
FROM `database1`.`wp_options`
WHERE option_name="active_plugins"
UNION
SELECT option_value
FROM `database2`.`wp_options`
WHERE option_name="active_plugins"
ログイン後にコピー

このクエリは、アクティブなクエリを取得します。 「database1」と「database2」の両方からプラグイン データを取得し、結果を単一の包括的な結果セットに照合します。

以上が複数のデータベースに同時にクエリを実行してデータを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート