• 締切済み

ソートが重い

掲示板で記事数が一万件越えたあたりからソートなどでの一覧表示が重くなりました。 ※10記事のレコード一覧表示だけで20秒ほど。 5000記事くらいまではサクサク動いてた気がするんですが、そんなもんなんでしょうか? カラムは10個くらいです。コメント上限文字数は2千字程度です。 改善策があれば宜しくお願いします。

みんなの回答

  • nora1962
  • ベストアンサー率60% (431/717)
回答No.2

後、CPU、メモリ、IOの使用状況など、実際どこがボトルネックを起こして いるのか。 そのボトルネックが回避可能なのかなどがポイントになるかも。

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

具体的なアドバイスが欲しいなら、具体的な質問にしましょう。 次のような項目を、提示してください。 (1)MySQLのバージョン・・・MySQL4とかMySQL5とかじゃなく、MySQL 4.1など具体的に。 (2)表定義・・・表の構成列とデータ型。primary keyやuniqueなども明示 (3)母体データ例・・・操作対象のデータに加え、対象外のデータも。 (4)得たい結果例 (5)現状のSQL・・・検索条件、order by(acs、descも明示)、group by、distinct、limitなどがあるなら、重要な点なので省略しすぎない

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 掲示板のソートテクニックについて

    やりたいことは、PostgreSQL上にあるBBSテーブルの ・カラム「更新日付」の降順で親記事をソート ・カラム「返信順番」の昇順で子記事をソート して表示したいのですが、 どのようなロジックにすれば良いでしょうか? order by 更新日付 まではできたのですが、SQLだけではできそうに ありません。PHPでどのようにソートすれば できますでしょうか? ◆BBS出力イメージ 親2  子 1 2 3 親1  子 1  子 2

    • 締切済み
    • PHP
  • ソートに関する質問です

    C言語でのプログラム作成の課題が解けなくて困っています。 バブルソートを使って、1000000個の整数データを昇順に並べ替えるプログラムを作成するというものです。 自分なりに作成したプログラムは、mallocでデータを格納する動的領域を確保して、後はシンプルにバブルソートの処理を行っています。 データ数が5,6万程度なら正常な動作が確認できるのですが、それより大量のデータ数だと、処理に時間が掛かりすぎるせいか、もしくは処理しきれずに動かなくなってしまったのか分かりませんが、プログラムの処理がいつまでたっても終わりません。 おそらくバブルソートの2重ループのあたりで、膨大な処理になってしまうのだと思うのですが、この問題についての改善策をどなたかご教授いただけませんでしょうか。

  • Windows live mail 差出人でソート

    Windows7 32bitに標準してインストールされているWindows live mailを使用しています。 送信済みトレイで、一覧を差出人をキーとしてソートしたいのですが、 なぜかうまくいきません。 一覧の上の差出人をクリックあるいは、表示→並べ替えで 差出人を選択してみても、件名でソートされてしまいます。 受信トイレは宛先でも件名でもソートを選択することが出来ます。 これってWindows live mailのバグでしょうか? 何か解決策がありましたら教えて下さい。

  • 検索のソートについて

    以前phpのカテゴリ内で以下のようなQ&Aをみつけましたが、まったく同じ状況で使用する言語がperlの場合どのようにすればいいのでしょうか?どなたか教えて下さい。 "PHP+MySQLを勉強中です。 例えば、商品テーブルに商品ID、商品名、価格、在庫数の4つのフィールドがあって、その表の各名称をクリックするとソート(例:オークションなどで現在価格をクリックするとソートなど[select * from 商品 order by 価格 asc])できるスクリプトをどのように作成すればよいか教えて下さい。" "shohin.phpで商品一覧を表示するとして、フィールド各名称のリンクを <a href="shohin.php?sort=1">商品ID</a><a href="shohin.php?sort=2">商品名</a>・・・ のようにします。" あとはswitch文を使ってget値(sort=の値)別にクエリーを変えるだけです。

    • ベストアンサー
    • Perl
  • フィルタでソートすると画像が畳まれます

    国会議員の顔写真付き一覧を以下のようにつくろうとしています。 ・1つのシートに全議員約700人の名前などの情報を入力 ・顔写真は、ハイパーリンクではなく、セルにそのまま添付して見れるようにする。 ・オートフィルタを設定し、各条件(政党、派閥、選挙区など)でソートをかけ、条件にあう議員を表示、その際各議員の顔写真も見れるようにする。 上記のような一覧を作って、実際フィルタを使うとテキストは表示されるのですが、顔写真は「畳まれる」(関係のない顔写真の背景に重なり見れない)状態になってしまうのです。 もし解決策、あるいは上記のようなことを可能にするフリーウェア等をご存知の方がいらっしゃったら、どうか教えてください。

  • MySQL,PHPを使いデータとデータ件数を取得する関数

    よろしくお願いします。 このようなテーブルがあります。 テーブル名GAME id name    price  genre_id  comment 1 FF1    100  1  おもしろい 2 カービー 200 3 丸い赤 3 バイオ   250 2 怖い : : : : : テーブル名GENRE genre_id genre_name 1 RPG 2 ホラー 3 バイオ このようなテーブルがあるとして、 検索したいカラム(id,name,g_id,comment)に対して検索キーワードに部分一致をしたものデータからソートしたいカラムと昇順降順のようにソートしページ数から (ページ数-1)*10+1 ~ ページ数*10 最終ページのときは (ページ数-1)*10+1 ~ 最終ページ の部分のデータを取得する関数を作りたいです。表示するデータは id name genre_name です。 ページャーも使うので検索カラムにたいして検索ワードに部分一致した結果件数も戻り値として返したいです。 上記のsql文を教えてください。 またデータと結果件数を返す関数を作ることは可能でしょうか? 関数の引数は以下のように5つにするつもりです。 function getList($search_column,$search_word,$sort_column,$sort_order,$page_number) どうかご教授ください。

    • 締切済み
    • PHP
  • CentOS7のjoinコマンドの-eオプション

    CentOS7のjoinコマンドで2つのファイルの中身を接続したいのですが、 <File1> ta**@yahoo.jp hana**@yahoo.jp ji**@yahoo.jp - <File2> ta**@yahoo.jp 1 password1 hana**@yahoo.jp 2 password2 の場合、「File1にあるレコードの、カラム2、カラム3の値はカラム1が一致するFile2のレコードの対応数るカラム2、カラム3の値を引用する」と言う仕様で2ファイルを結合したいと思います。 「但し、File1にしかないレコードのカラム2、カラム3は固定文字 "0 PASSWORD0"を表示する」と言う仕様で、 https://okwave.jp/qa/q6294003.html?utm_source=twitterfeed&utm_medium=twitter を参考に、 $ join -1 1 -o 0 2.2 2.3 -a 1 -e "0 PASSWORD0" <(sort File1) <(sort File2) とやってみたところ、 ji**@yahoo.jp 0 PASSWORD0 0 PASSWORD0 hana**@yahoo.jp 2 password2 ta**@yahoo.jp 1 password1 と、ji**のレコードにカラム2、3が2回繰り返して表示されてしまいます。 二重引用符を外すと「join: 余分な演算子 '/dev/fd/62' と、原因不明のエラーが表示され、また、-e 0 -e PASSWORD0 と言う構文もエラーとなります。 ji**@yahoo.jp 0 PASSWORD0 hana**@yahoo.jp 2 password2 ta**@yahoo.jp 1 password1 と表示してくれたら解決なのですが、どう指定すれば正常な結果が得られるでしょうか?

  • C言語でのCSVソートとデータ抽出について

    皆様、はじめまして。 この度、急ぎでプログラムをC言語で作成するように命じられました。 C言語は経験が無いと断ったのですが、要員確保が出来ない為、何とかしてくれとのこと。 本来なら自分で学習しながら、作成すべきなのですが、超短納期の為、その時間が取れません。 今回は誠に申し訳ないのですが、皆様のお力をお借り出来ないでしょうか。 宜しくお願いいたします。 仕様概要 ・CSVファイルを読み込み、2カラム目の項目(文字型)で昇順ソート(qsort)を行う。 ・ソートされた2カラム目の同一値毎に1カラム目(数値型)が最大値となるレコードを抽出する。 ・抽出されたレコードを新規CSVファイルに出力する。 入力CSV概要 ・レコード件数は日によって変わる ・カラム数は8つ ・各カラムの項目長は可変長 ・上記に伴いレコード長も可変長 入力ファイル例 39,"AAA3","B1","C1","D1","E1","F1","G1" 100,"AAA1","B2","C2","D2","E2","F2","G2" 101,"AAA2","B3","C3","D3","E3","F3","G3" 105,"AAA1","B4","C4","D4","E4","F4","G4" 102,"AA1","B5","C5","D5","E5","F5","G5" 99,"AAA2","B6","C6","D6","E6","F6","G6" 1019,"AAA3","B7","C7","D7","E7","F7","G7" 処理後に出力されるファイル 102,"AA1","B5","C5","D5","E5","F5","G5" 105,"AAA1","B4","C4","D4","E4","F4","G4" 101,"AAA2","B3","C3","D3","E3","F3","G3" 1019,"AAA3","B7","C7","D7","E7","F7","G7"

  • FileMaker5.5のダイアログ表示の回避

    FileMaker5.5でスクリプトを組み(組まなくても良いと思いますが)、一覧表示から検索を行い、詳細結果を表示するようにしています。 その際、該当レコードが無い場合、「この検索条件に該当するレコードはありません」というダイアログが表示され、キャンセルをクリックすると元の一覧のレイアウトに戻らずに、詳細のレイアウトが未ソートのまま表示されてしまいます。 該当レコードが無い場合に「この検索条件に該当するレコードはありません」というダイアログを表示しないで元のレイアウトへ戻る方法は無いでしょうか?

  • インデックスの張り方について

    とあるテーブルのレコード数は、全部で28レコードあります。 このテーブルにはインデックスを張っておらず、シーケンシャルスキャンでDBよりSELECTしています。 通常にシステムを運用する上では問題ないのですが、負荷試験などで同時接続数を50などにしループでDBにアクセスさせるとき、その他の4000万レコード程度あるテーブルをSELECTしてくるのは0.00xxx秒で行えるのに対し、この28レコードしかないテーブルからSELECTしてくる際は、遅い場合で0.xx秒もかかってしまいます。 この28レコードしかないテーブルにインデックスを張っても、レコード数が少なすぎてまったく意味がありませんでした。 ちなみにこのレコードへは下記のようなSELECT文を発行しています SELECT xxx,xxx,xxx FROM xxxx where カラム1 = aaaa AND カラム2 IN (bbb,ccc) AND カラム3 = ddd; このレコードのSELECT文を高速化させるには、どのような手段があるでしょうか。 お手数ですがご教示いただけますと幸いでございます。 DBはPostgreSQL、PHPのWebアプリケーションよりDBにアクセスしています。