ホームページ >データベース >navicat >navicat で複数テーブルのクエリを実行する方法

navicat で複数テーブルのクエリを実行する方法

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼オリジナル
2019-08-13 11:31:107381ブラウズ

navicat で複数テーブルのクエリを実行する方法

デカルト積

複数テーブルのクエリの場合は、テーブル名をカンマで区切ります。このようにして、複数のテーブルの全データを求めることができますが、その求め方は直積法(完全結合)です

このようにして見つかったデータの多くは無効なデータです。複数テーブルのクエリに条件を追加して、必要な情報を検索できます。

内部結合

では、データベースの設計時に、テーブル間の関連する属性を通じて有効な情報をフィルターで除外できます。

明示的な内部結合

SELECT * FROM employee AS e1,enterprise AS e2 WHERE e1.enterpriseId-e2.id;

暗黙的な内部結合

SELECT * FROM employee e1 INNER JOIN enterprise e2 ON e1.enterpriseId=e2.id;

暗黙的な内部結合と明示的な内部結合の間に本質的な違いはありません。

関連する推奨事項: 「Navicat for mysql グラフィック チュートリアル

外部接続

テーブルに基づいて、すべてを調べますこのテーブルのデータを他のテーブルに関連付けます。関連付けられている場合はその情報が表示されます。関連付けがない場合は、null として表示されません。

左外部結合

SELECT * FROM employee e1 LEFT JOIN enterprise e2 ON e1.enterpriseId=e2.id;

右外部結合

SELECT * FROM employee e1 RIGHT JOIN enterprise e2 ON e1.enterpriseId=e2.id;

navicat で複数テーブルのクエリを実行する方法

テーブルの別名

使用表 エイリアスを使用する理由は 2 つあります:

1. 利便性と簡素化のため。

2. 重複テーブルから複数テーブルのクエリを実行する場合は、エイリアスを使用する必要があります。

エイリアスを使用するには 2 つの方法があります:

1. テーブル名の後に直接スペースを追加し、新しい名前を付けます。

SELECT * FROM employee e1,enterprise e2 WHERE e1.enterpriseId-e2.id;

2.as は直接命名するのと変わりませんが、より標準化された SQL ステートメントが見やすくなるようです。

rree

以上がnavicat で複数テーブルのクエリを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。