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

    私的良スレ書庫

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

    元スレMySQL 総合 Part19

    mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    601 : NAME IS - 2011/04/29(金) 14:32:33.36 ID:??? (+46,+18,-17)
    サービス規模によるね
    停止しても15秒程度なら問題無いとかね。

    実際いくつかmysqldumpを朝4時頃回してる
    603 : NAME IS - 2011/05/02(月) 02:14:30.14 ID:??? (-25,-30,-74)
    select * from table だと title が同じレコードを複数持ってきて
    全行に select count(id) ... を実行するから遅くて当たり前

    ①select * from from table を select title from table group by title にする

    ②select title, count(*) from table group by title

    とにかくSQLの勉強をしなさい
    604 : NAME IS - 2011/05/02(月) 03:29:40.32 ID:??? (+0,-29,-17)
    >>603
    Group 使うのと distinct はどっちが早いんかな。
    まぁ、自分で試すか。
    605 : NAME IS - 2011/05/02(月) 09:46:20.52 ID:??? (+24,+29,-13)
    インデックスの有無も気にした方が良い
    606 : NAME IS - 2011/05/02(月) 17:18:33.18 ID:??? (+67,+29,-77)
    SQL文を解釈して実行するプログラムはプログラミング言語を処理するコンパイラの様に
    字句解析、構文解析といった処理を行ってるのかな?
    コンパイラの作り方の本を読めば参考になるかな?
    それとも全く別で関係ない?
    607 : NAME IS - 2011/05/02(月) 18:54:45.01 ID:??? (+47,-29,-28)
    >>606
    MySQLはインタプリタにbisonの字句解析が入ってるはず
    (インストールするときにbisonがないって文句言われた)
    608 : NAME IS - 2011/05/02(月) 19:13:06.61 ID:??? (+94,+29,-47)
    SQL文なんてプログラミング言語に比べたら解析簡単だろ
    参考にはなるけどレベル高すぎると思う

    とりあえず SQL 構文解析 で調べたほうがいい
    609 : NAME IS - 2011/05/02(月) 22:09:11.84 ID:??? (+74,+29,-80)
    >>608
    いや、たぶんそんなにカンタンでもない。
    厳密なSQLだと、yacc/bisonのような
    字句構文解析系が使えないだろ。

    >>607のいうとおり、MySQLは使ってる
    ようなんだけど、それ由来の制限も
    ドキュメントに書いてあったはず。
    予約語がどうこうとかみたいな?
    610 : NAME IS - 2011/05/02(月) 22:34:48.63 ID:??? (-1,-29,-4)
    MyPhpAdminみたらいいんじゃないの
    611 : NAME IS - 2011/05/02(月) 22:35:19.50 ID:??? (+81,+26,+0)
    スマン関係ないか
    612 : NAME IS - 2011/05/02(月) 22:40:19.31 ID:??? (+63,+29,-2)
    >>611
    微塵も関係ないな
    613 : NAME IS - 2011/05/03(火) 20:09:23.94 ID:??? (-1,-29,-5)
    phpMyAdminなら関係あるのか?
    614 : NAME IS - 2011/05/03(火) 20:32:05.06 ID:??? (+90,+28,-2)
    あれはそのままSQLに渡してるだけじゃねーの
    615 : NAME IS - 2011/05/03(火) 21:49:34.31 ID:??? (+70,+29,-13)
    >>614
    一応ちょっと解析っぽいことはしてる
    616 : NAME IS - 2011/05/03(火) 22:05:55.32 ID:??? (+57,+29,-16)
    「一応」「ちょっと」「解析っぽい」w
    617 : NAME IS - 2011/05/04(水) 00:01:34.57 ID:??? (+57,+29,-19)
    何が笑えるんだろう??
    結構的確な表現だと思うのだがー
    618 : NAME IS - 2011/05/04(水) 00:25:49.79 ID:??? (+57,+29,-13)
    曖昧な言葉を3つも並べて何が「的確」だよw
    619 : NAME IS - 2011/05/04(水) 00:28:46.21 ID:??? (+57,+29,-1)
    ソース見れば的確かどうかわかるのにね
    620 : NAME IS - 2011/05/04(水) 09:42:46.01 ID:2ZdGWZNh (+12,-30,-312)
    ショートURLサービスを作ってみようと思うんですが、
    「http://bit.ly/パラメータ」のあのパラメータは64進数の数値だそうで、
    あらかじめ一定の範囲のパラメータをDBにパラメータテーブルとして持たせておこうと思います。
    構成は
    id(主キー、auto_increment)/param/is_used(使用済みチェック)
    1/abc1/0
    2/abc2/0
    3/abc3/0
    こんな感じにしたいのですが(数値は適当です)、たとえばパラメータの値を100000~300000まで
    あらかじめ入れておくとして、
    プログラム(php)のfor文で「indexを64進数に変更してinsertを20万回ループ」させるのは
    おかしい気がします。
    Mysql5の機能だけでスマートに実現する方法はあるでしょうか?

    あと、上のパラメータテーブルの構造はおかしいでしょうか。
    idは要らないのかな、is_usedも無用で利用されたパラメータの行は削除の方が良いんでしょうか。
    621 : NAME IS - 2011/05/04(水) 13:36:08.71 ID:??? (+58,+10,-4)
    俺ならオートインクリで36進数使うかな
    622 : NAME IS - 2011/05/04(水) 13:50:35.69 ID:??? (+107,+28,-23)
    >>620
    ショートURLサービスは特許登録されていますから、手法が似てると侵害で訴えられますよ
    623 : NAME IS - 2011/05/04(水) 15:51:37.43 ID:??? (+140,+29,+0)
    >>622
    それでお金儲けしなきゃ問題ない
    624 : NAME IS - 2011/05/04(水) 19:50:26.73 ID:??? (+104,+29,-48)
    >>623
    金儲けしなかったら特許侵害してもいいのか。
    知らなかった。
    じゃあ、非営利団体はやりたい放題できるな。
    625 : NAME IS - 2011/05/04(水) 20:49:27.31 ID:??? (+75,+29,-27)
    >>624
    とりあえず>>623の揚げ足取りたかった事は理解したが、脊髄反射のそれは馬鹿にしか見えんぞ。
    626 : NAME IS - 2011/05/04(水) 21:05:54.56 ID:??? (+52,+29,-3)
    それ揚げ足じゃねぇだろ
    627 : NAME IS - 2011/05/04(水) 21:32:45.96 ID:??? (+56,+29,-46)
    >620が無料サービスしたせいで、ビジネス機会損失したら
    余裕で損害賠償請求始めるわ
    629 : 620 - 2011/05/05(木) 10:04:52.48 ID:zYH1Ia7Y (+77,+30,-58)
    >>621
    すみません、どうしてその方法を選んだのか良かったら教えてください

    >>622
    え!そうなんだ!?知らなかった…
    既存の自分のサイトにだけリンクする機能として使おうと思ってるんだけどそれでもダメなのかな
    うーむ、でも聞いて良かった。ありがとうございます
    630 : NAME IS - 2011/05/05(木) 14:56:14.62 ID:??? (+118,+29,-19)
    >>629 冗談だボケ
    まぁ本当に特許取ってるかも知れんけど俺は知らんよ
    631 : 620 - 2011/05/05(木) 15:21:54.71 ID:C4QwRBw+ (+69,+27,-13)
    >>630
    そうなの?安心したー

    あらかじめ20万行くらいのテーブルを作る件は、やっぱりプログラム(php)で
    20万回insertするしかないんでしょうか?
    632 : NAME IS - 2011/05/05(木) 16:00:46.55 ID:??? (+16,-11,-15)
    データを20万件作ってバルクインサートすればよろしいのでは?
    633 : NAME IS - 2011/05/05(木) 20:33:54.84 ID:??? (+5,-28,-2)
    >>631
    事前にINSERTが必要なのは異常。
    634 : NAME IS - 2011/05/05(木) 22:31:52.16 ID:??? (+61,+29,+0)
    >>631
    なぜ安心できるのか
    635 : NAME IS - 2011/05/06(金) 00:48:08.50 ID:??? (+73,+29,+0)
    >>630
    それは冗談とは言わんな。 嘘 と言うんだよ
    636 : NAME IS - 2011/05/06(金) 01:08:12.78 ID:??? (+57,+29,-25)
    いずれにせよ、2chの書き込み「だけ」で判断するなと
    637 : NAME IS - 2011/05/06(金) 04:56:52.24 ID:??? (-1,-29,+1)
    NAME IS NULLさん、ありがとうございます。
    おかげで解決しました。
    638 : NAME IS - 2011/05/06(金) 05:22:01.30 ID:??? (+45,+27,+0)
    うむ
    639 : NAME IS - 2011/05/06(金) 09:01:11.00 ID:??? (+47,+29,+0)
    いいってことよ
    640 : NAME IS - 2011/05/06(金) 09:12:07.18 ID:??? (+52,+29,-1)
    今後も精進してくれたまえ。
    643 : NAME IS - 2011/05/06(金) 19:28:13.88 ID:??? (+0,-28,-22)
    >>642
    上げてもかわらんだろ。
    innodbはmyisamと違ってレコード数は実際に数えないとわからんから概算ってことだ。

    そもそもphpmyadminでも、正しい数字ではありません、って注意書きある。
    644 : NAME IS - 2011/05/06(金) 22:43:11.14 ID:5aOEnpcJ (-20,+29,-1)
    >>643
    なるほど、参考程度に見ておけってことですね。
    645 : NAME IS - 2011/05/06(金) 23:17:11.44 ID:??? (-1,-29,-6)
    基本innoDBでfulltextキーはMyISAMだわ
    647 : NAME IS - 2011/05/07(土) 17:29:33.24 ID:??? (+7,-11,-36)
    >>646
    スローなクエリをちょっと実行しちゃえば。

    サブクエリとか
    ストアドとか
    文字列処理とか
    648 : NAME IS - 2011/05/07(土) 17:29:57.68 ID:??? (+32,-29,-16)
    select sleep(10);
    で、とりあえずスロークエリはすぐ出せる
    649 : NAME IS - 2011/05/08(日) 12:40:39.09 ID:??? (+62,+29,-17)
    >>648が天才すぎてびっくりした。いやマジで。
    なんつーか死にたくなってきたわ。
    650 : NAME IS - 2011/05/08(日) 12:44:47.24 ID:??? (+57,+29,-3)
    こういう小ネタはいいな
    俺も知らなかった
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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