ホームページ > バックエンド開発 > PHPチュートリアル > このmysqlステートメントをphpでどのように書くのでしょうか?

このmysqlステートメントをphpでどのように書くのでしょうか?

WBOY
リリース: 2016-08-08 09:06:46
オリジナル
1071 人が閲覧しました

注文テーブル: order
このmysqlステートメントをphpでどのように書くのでしょうか?
注文商品テーブル: order_goods
このmysqlステートメントをphpでどのように書くのでしょうか?
つまり、order_goods には、注文内の各注文のすべての商品情報が保存されます
対象となる注文に含まれる商品とその方法を確認する必要があります。書いてもらいますか?
例: order テーブルで order_no が 20160804164336873986 である注文を検索したいと思います。order と order_goods のすべてのフィールドがリストされています。

返信内容:

注文テーブル: order
このmysqlステートメントをphpでどのように書くのでしょうか?
注文商品テーブル: order_goods
このmysqlステートメントをphpでどのように書くのでしょうか?
つまり、order_goods には、注文内の各注文のすべての商品情報が保存されます
対象となる注文に含まれる商品とその方法を確認する必要があります。書いてもらいますか?
例: order テーブルで order_no が 20160804164336873986 である注文を検索したいと思います。order と order_goods のすべてのフィールドがリストされています。

order_goods は 1 つの order_id に対して複数のレコードを持っているため、order_goods を使用して order クエリを左結合します。結合クエリ ステートメントの実行効率は高くないため、最適化する必要があります。 リーリー

リーリー

1対多、リレーショナルモデル

上記の回答のいくつかを読んだ後、質問の要件を満たすことができると思います。強迫性障害を持つ私にとって、トピックをクエリするときに

記号を使用してはいけない、と言わざるを得ません。フィールドを好きなだけ書き出し、同じ名前のフィールドの名前を変更してください。 *

結合と 2 つのクエリへの分割を使用しないことをお勧めします。また、SELECT * も使用しないようにしてください。

私も少し強迫性障害を患っています。最近、mysql を見ると、クエリ対象の条件フィールドがインデックス化されているかどうかを尋ねたくなります。

また、上記の答えを見た後、最初に order テーブル内のデータをクエリし、次にループを使用して各番号 ID に対応する order_goods テーブル内のデータをクエリします。この方法では、個別のクエリによって MySQL が即座にフリーズすることはありません。もちろんこれらはデータ量が特に多い場合に表示されます。データ量が少ない場合は、左結合を使用することについては何も言いません)。


複数のテーブルクエリ。関連する

リーリー

上記の 2 つの記述方法は同じで、2 つのテーブル接続を実装します。

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