mysqli 拡張テクノロジーを使用して複数のデータ テーブル クエリを実装する

黄舟
リリース: 2017-05-07 16:42:58
オリジナル
2042 人が閲覧しました

mysqli拡張テクノロジーを使用して複数のデータテーブルクエリを実装します

実際のプロジェクト開発プロセスでは、多くの場合、プロジェクトは情報を保存するために複数のデータテーブルを必要とし、これらのテーブルは主キーを介して相互に関連付けられており、これはこの記事では、複数のデータ テーブルにクエリを実装する方法を紹介します。

ということで、前回の記事「mysqli拡張技術を使ってサーバー接続エラーレポートを表示する方法」では、mysqli拡張技術を使ってサーバー接続エラーレポートを表示する方法を紹介しましたが、今日はmysqli拡張機能の使い方を紹介します。テクノロジーは複数のテーブル間のクエリを実装します。

技術的なポイント

mysqli技術を使用して複数テーブルクエリを実装する場合、主キーを介して複数のテーブルをどのように接続するかが鍵となります。この例で複数テーブルのクエリを実装するコードは次のとおりです:

$sql = "select * from student,score  where student.id=score.id";
$result = mysqli_query($link, $sql);
ログイン後にコピー

複数のテーブル間のクエリを実装するには、すべてのテーブル名を from キーワードの後に​​リストし、テーブル名をカンマで区切る必要があります。同時に、複数のテーブル間の接続条件を where キーワードで指定する必要があります。たとえば、この例では、student.id=score.id は、student テーブルとスコア テーブル間の接続が、id フィールドを介して行われることを示します。学生テーブルとスコアテーブルの sid フィールドが接続されます。

実装プロセス

(1) MySQLデータベースに接続するためのphpファイルを作成します。コードは次のとおりです。

$link = mysqli_connect("localhost", "root", "root");
$conn = mysqli_select_db($link, "php_cn");
$sql = "select * from student,score  where student.id=score.id";
$result = mysqli_query($link, $sql);
$res = mysqli_fetch_array($result, MYSQLI_ASSOC);
ログイン後にコピー

(2) 複数のテーブル間でクエリを実装します。student テーブルと Grade テーブルに条件を満たすレコードがあれば、それらのレコードが表示されます。それ以外の場合は、次のメッセージが表示されます。関連情報はありません。コードは次のとおりです:


     

序列

名字

语文成绩

数学成绩

外语成绩

ログイン後にコピー

最終的な出力結果は次のとおりです:

mysqli 拡張テクノロジーを使用して複数のデータ テーブル クエリを実装する

注:

上記の結果図の「sequence」フィールドと「name」フィールドは生徒データから取得されます。テーブル、その他のフィールドはスコア データ テーブルから取得されます。

マルチテーブルクエリを実現するための mysqli 拡張テクノロジーをここで紹介しました。次の記事で引き続き mysqli 拡張テクノロジーについて説明します。詳細については、「メモリの実装」を参照してください。 mysqli拡張技術「リサイクル》を通じて!

【関連チュートリアルの推奨事項】

1. 関連トピックの推奨事項:「MySQL データベースの操作

2.【MYSQL オンライン無料ビデオチュートリアル

3. 関連するビデオコースの推奨事項: 基本的な MySQLi 拡張ライブラリのビデオチュートリアル

以上がmysqli 拡張テクノロジーを使用して複数のデータ テーブル クエリを実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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