のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,831人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレ【PHP】下らねぇ質問はID出して書き込みやがれ 127

    php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    201 : nobodyさん - 2013/03/27(水) 14:13:28.39 ID:??? (+0,-30,-19)
    >>199
    誤:if (strlen($msg) > 0) {
    正:if (strlen($buf) > 0) {
    202 : 198 - 2013/03/27(水) 18:47:39.02 ID:MD7cwBMv (+38,+29,-39)
    >>200
    なにか、他にテクニックがあるかとも思ったのですが、
    やはり、テーブルの結合をするしかないようですね。
    有難うございました。
    203 : nobodyさん - 2013/03/27(水) 19:02:19.68 ID:??? (+57,+29,-37)
    テーブルの構造もやりたい内容も詳しくわからないのにテクニックとか
    出しようが無いだろw
    必要な呼び出しなら何回だろうが必要なだけ呼ぶしかないと言うだけのこと。
    204 : nobodyさん - 2013/03/27(水) 19:12:48.33 ID:??? (+24,-29,-115)
    結合すると
    > そのwhileループ内で、更に、5回ずつデータベースに問い合わせる
    これがそもそもなくなるんじゃないかっていうのが回答者の意見だと思う

    でも
    > テーブルを結合して取得すればよいかとも思うのですが、
    > 問い合わせが、5回、10回と多くなるとテーブルの結合も難しいです。
    これがわからない

    もうちょっと詳しく頼むわ
    205 : 198 - 2013/03/27(水) 19:26:24.23 ID:MD7cwBMv (+87,+29,-58)
    >>204
    不明瞭な点が有り、すみません。
    意図していることは、結合するテーブルが5個、10個と多くなると、
    SQLが複雑化するということです。
    また、DBの設計上、結合が無理な場合も有り得るということです。
    206 : nobodyさん - 2013/03/27(水) 19:28:37.44 ID:??? (+47,-10,-3)
    PHP関係なくね?
    207 : nobodyさん - 2013/03/27(水) 19:34:59.92 ID:??? (+0,-28,-27)
    自分はデータベースを使うとき、内部は単一のテーブルしか使わん。
    Sqliteメインからかもしれないが、分けるなら別ファイルにする。
    208 : nobodyさん - 2013/03/27(水) 20:19:03.85 ID:r73Jwrfn (+49,+29,-14)
    >>205
    そうなってくると、DB設計見直してもいい気がします。
    209 : nobodyさん - 2013/03/27(水) 20:36:36.55 ID:??? (+122,+29,-44)
    >>205
    今スマホなんでURLは示せないけど、Oracle SQLパズルってサイト検索してみて。
    一個のクエリで驚くほどいろんなことできるから。
    ループ内のクエリは絶対だめ。
    210 : nobodyさん - 2013/03/27(水) 20:38:31.67 ID:2iOdM1fp (+24,+29,-14)
    PHPの練習問題などを公開しているサイトは無いですか?
    イマイチ練習法がわかんなくて
    211 : 198 - 2013/03/27(水) 20:55:59.05 ID:I26BQZQ8 (+36,+29,-65)
    >>208
    DB設計についても再考してみます。

    >>209
    http://www.geocities.jp/oraclesqlpuzzle/
    これですね。かなり高度のようですが勉強してみます。

    >ループ内のクエリは絶対だめ。
    肝に銘じます。有難うございました。
    212 : nobodyさん - 2013/03/27(水) 21:39:21.74 ID:??? (+89,+29,-18)
    Perlスレ荒らすのやめてもらえませんかね
    昨日まで平和に進行してたスレが1日で50レス近く荒れてるんですよ
    かなり迷惑なので他のスレにお願いします
    213 : nobodyさん - 2013/03/27(水) 21:49:56.92 ID:??? (+44,+26,+0)
    被害妄想乙
    214 : nobodyさん - 2013/03/28(木) 00:27:58.07 ID:??? (+63,+30,+0)
    215 : nobodyさん - 2013/03/28(木) 09:21:24.03 ID:??? (+29,+11,+0)
    ストアド使えよ
    216 : nobodyさん - 2013/03/28(木) 11:43:28.74 ID:??? (+129,+29,-22)
    >>209
    >ループ内のクエリは絶対だめ。
    これなんでダメなん? PDOなんかだとループ前提の仕組みもあるよね
    217 : nobodyさん - 2013/03/28(木) 12:53:36.30 ID:??? (+81,-5,-198)
    >>216
    > これなんでダメなん?
    実行時間が長くなり、サーバにも負担がかかるので。

    例えば1000行戻ってくるクエリをループして、それぞれの行で5回検索をしたとすると、
    ループ内では合計5000回のクエリ実行が必要。

    対ローカルでもクエリの実行は数ms程度かかる。
    1回のクエリにつき1msかかるとすると、このループの実行時間は5秒。
    ネットワーク経由だと、10ms以上かかったりするので、数十秒~数分のオーダーになるかもしれない。

    一方、全部JOINして1回のクエリで終わらせられれば、数十~数百msくらいで終わる。

    > PDOなんかだとループ前提の仕組みもあるよね。
    MDB2しか使ったことないんだけど、PDOのその仕組みってどういう奴なの?
    218 : nobodyさん - 2013/03/28(木) 12:55:27.85 ID:??? (+43,+15,-28)
    マスターテーブルなんかを事前にhashで持っておき、ループ内ではクエリの実行を行わず、
    hashを参照する方法もある。

    が、大抵はJOINした1回のクエリより遅い。
    220 : nobodyさん - 2013/03/28(木) 13:42:08.01 ID:??? (+31,+8,-4)
    ループで回すか、フェッチAllとか
    221 : nobodyさん - 2013/03/28(木) 13:50:16.41 ID:??? (-1,-29,-13)
    ありがとうございます
    fetchAll使って解決しました
    222 : nobodyさん - 2013/03/28(木) 13:51:36.21 ID:??? (-27,-24,+0)
    223 : nobodyさん - 2013/03/28(木) 13:54:46.08 ID:??? (-12,-28,-1)
    >>219
    これでいけないか?

    PDO limit句
    http://phpgo.info/?PDO%20limit%E5%8F%A5
    224 : nobodyさん - 2013/03/28(木) 14:09:19.06 ID:??? (+90,+29,-23)
    何でマルチポストに回答してんの?
    そこまでして自己顕示欲を満たしたいの?
    225 : nobodyさん - 2013/03/28(木) 14:16:34.23 ID:??? (+57,+29,-4)
    いいチャンスだったしただサイトの宣伝したかっただけだよ
    226 : nobodyさん - 2013/03/28(木) 14:17:01.51 ID:??? (+50,+22,-8)
    匿名でIDも出さずに回答してるのに、自己顕示欲とかwww
    227 : nobodyさん - 2013/03/28(木) 14:21:40.28 ID:??? (+61,+29,-14)
    >>224
    俺がマ板からこの板に誘導したから。
    が、よく>>222をみたらム板にもマルチしてたのか。どうでもいいけど。
    228 : nobodyさん - 2013/03/28(木) 14:27:57.85 ID:??? (+47,-14,-6)
    そういえばPDOのLIMIT句バグはもう直ったのかな
    229 : nobodyさん - 2013/03/28(木) 15:18:25.70 ID:??? (+97,+29,-46)
    >>228
    質問ならID出てるはずだから質問じゃないな
    独り言はTwitterでやれ精神障害
    230 : nobodyさん - 2013/03/28(木) 15:26:20.01 ID:??? (+71,+29,-1)
    >>229
    君も心に何かの問題を抱えてるようだよ。
    231 : nobodyさん - 2013/03/28(木) 16:33:27.95 ID:??? (+57,+29,-15)
    夫婦喧嘩ってこういう感じなのだろうか。

    言い合えるってだけで羨ましいス…
    別に何も無いヨ…
    232 : nobodyさん - 2013/03/28(木) 22:53:42.51 ID:??? (+140,+29,-15)
    >>216 >>217
    > PDOなんかだとループ前提の仕組みもあるよね。

    PDOでそういう仕組みは見たことないけど。
    これと勘違いしてるんじゃない。

    http://www.php.net/manual/ja/pdo.prepared-statements.php
    プリペアドステートメントを使用して、繰り返し挿入処理を行う
    235 : nobodyさん - 2013/03/29(金) 00:58:12.47 ID:??? (-11,-28,-2)
    >>234
    ありがとーーー!!!
    htmlspecialcharsを甘くみてたよ、ほんと助かった
    236 : nobodyさん - 2013/03/29(金) 01:09:24.93 ID:??? (-8,-26,+0)
    >で4じゃねーの
    237 : nobodyさん - 2013/03/29(金) 01:09:49.75 ID:??? (+71,+29,-3)
    更新してなかった・・・死のう
    238 : nobodyさん - 2013/03/29(金) 09:05:45.51 ID:??? (+64,+26,+0)
    >>232
    それをループ内で使う
    239 : nobodyさん - 2013/03/29(金) 10:29:21.35 ID:??? (+71,+24,-14)
    >>232
    やっては駄目だといわれているのは、検索クエリ。
    240 : nobodyさん - 2013/03/29(金) 11:16:19.88 ID:??? (+50,+22,-6)
    DBをキュー代わりに使ってるときは検索でもループ内で使うお
    241 : nobodyさん - 2013/03/29(金) 11:31:22.70 ID:??? (+57,+29,-32)
    ループで検索クエリを流すかどうかは状況によるよ
    一概にダメとは決めつけられない、というか決めつけるのは大抵の場合よくない
    242 : nobodyさん - 2013/03/29(金) 11:51:07.51 ID:??? (+89,+29,-30)
    JOINできるんだったら、一回で済ませた方がいいだろ
    243 : nobodyさん - 2013/03/29(金) 11:55:25.73 ID:??? (+68,+29,-3)
    >>242
    何の話をしているんだ?
    244 : nobodyさん - 2013/03/29(金) 11:58:48.24 ID:??? (+38,+0,-1)
    >>237
    それをループさせる(爆)
    245 : nobodyさん - 2013/03/29(金) 12:53:54.89 ID:??? (+46,+20,-3)
    >>198の話だけど?
    246 : nobodyさん - 2013/03/29(金) 13:44:23.45 ID:??? (+86,+29,-3)
    とっくにそんな話は終わってんだろ
    247 : nobodyさん - 2013/03/29(金) 13:56:24.60 ID:??? (+69,+29,-2)
    >>246
    そう思うんならほっとけよ
    248 : nobodyさん - 2013/03/29(金) 14:02:33.34 ID:??? (+57,+29,-6)
    ループしないといけない場合でも、ストアドで実装できるならストアドの方がいいね。
    249 : nobodyさん - 2013/03/29(金) 17:04:23.71 ID:??? (+6,-25,+0)
    >>243
    質問はID出せゴミ
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について