これは本当に一般的な使用例ですが、私はこれを行う最良の方法を知らなかった。私は2つのテーブル別のsql selectでsql selectをネストしていますか?
チームテーブル
を持っていると言う - ID
- チーム名
選手テーブル
- ID
-
をTEAM_ID - PLAYER_NAME
言って、私がしたい出力HTMLに各チームの見出しを表示し、各チームの下にそれぞれのプレーヤー:
チーム1
- ボブ
- JON
チーム2
- 県
- ジェイソン
は以前、私は常にチームのために、そして結果を通してループしながら、SELECTステートメントを使用しました、外部キーが外部クエリの現在の行のIDと等しくなる別の選択ステートメントを実行します。これはダムで非能率的なやり方ですか?このようなことをする標準的な方法は何ですか?私は参加することができましたが、私はチームの見出しを一度だけ表示するためにいくつかのロジックを追加する必要があると思います。私はPHP + MySQLを使用しています。
私の例と同じ解決策ではありませんか? – eirikrl
そうかもしれませんが、私はそれが最高だと信じています。最適なソリューションは、1つのクエリで必要なものすべてを得ることを意味するわけではありません;)ここでは、結合がなく、サブクエリは必要ありません。問題がn^2の複雑さを持たない場合、それはできません。最初のセットをループする必要があります。そうしないと、データベースは結合またはサブクエリの場合に処理されます。同じ=同じ – Jerome