
No.2ベストアンサー
- 回答日時:
//メンバーテーブルからデータを取得
$hoge = mysql_query("SELECT name,age,city_code FROM member_table");
$i=0;
while($piyo = mysql_fetch_row($hoge)){
$name[$i] = $piyo[0];//名前を取得
$age[$i] = $piyo[1];//年齢を取得
$city_code = $piyo[2];//都市コードを取得
//都市コードから都市名を取得
$hogehoge = mysql_query("SELECT city_name FROM city_table WHERE city_code=".$city_code);
$piyopiyo = mysql_fetch_row($hogehoge);
$city_name[$i] = $piyopiyo[0];
$i++;
}
--------------------------------------------------------------------------------
これは極端な例ですが、レコード情報を取得しているループの中で、さらにクエリを
送信して情報を取得しています。
このようなケースでは、joinなりサブクエリなりを使用したほうが、パフォーマンスは
向上するかと思います。
個々のクエリに関しては、EXPLAINしてクエリの実行速度を計りながらコーディングして
いくのがいいかと思います。
参考になりましたら幸いですが、参考にならない場合は読み飛ばしてくださいませ。
この回答へのお礼
お礼日時:2007/10/18 14:06
回答ありがとうございます。
”10件表示”等の複数回処理の際に
もう一度別のクエリを発行してリレーションさせたりすると
パフォーマンスに影響がでることがあるということですね。
逆に言えば、一度程度の処理であれば、
パフォーマンスに影響はそんなにないということですね。
参考になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
一つ前に戻るには…
-
「テーブルに座って……」という...
-
AccessのSQL 部分一致したデー...
-
テーブルで一番古いレコードだ...
-
降順で並び替えて昇順で受け取...
-
SQLで複数列のデータを複数行に...
-
SQLでUPSERTを一度に複数行やる...
-
外部キーだけのテーブル(主キ...
-
飲み会で、座敷orテーブルどち...
-
会社の飲み会の幹事になり、座...
-
SQLでSUMなどの関数でデータが...
-
テーブルに存在しない列をselec...
-
ORA-01401が表示され、データが...
-
コンボボックスにレコードセッ...
-
まるいテーブル 円い 丸い 漢字...
-
面接のときテーブルが正面に。...
-
SELECT 文の NULL列は?
-
トリガって、自分自身のテーブ...
-
SQL、2つのテーブルで条件一致...
-
DBからタブ区切りのCSVデータを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
一つ前に戻るには…
-
グループからランダムに抽出す...
-
最大値を持つレコードを削除したい
-
【ストアドプロシージャ】条件...
-
mysqlでJOIN文
-
テーブル作成時のNULLの列につ...
-
ビューに追加・削除が出来ません。
-
PHP上のSQLで、SELECT文をいく...
-
update文の副問い合わせ使用
-
1列について重複行を除いて全列...
-
外部キー、親を調べるにはshow ...
-
副問い合わせの限界値はどれく...
-
mysqlのフィールド名
-
矛盾していないでしょうか?
-
MySQL INSERT文 エラー
-
「テーブルに座って……」という...
-
AccessのSQL 部分一致したデー...
-
降順で並び替えて昇順で受け取...
-
外部キーだけのテーブル(主キ...
-
Accessでデータシートに同じデ...
おすすめ情報