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

みんなの評価 : ☆
レスフィルター : (試験中)
一つのテーブルに100万レコード入れました。カラムは10。
セレクトは俊足でさすがmysqlと言えますがinsertが遅すぎます。
PHPのループでレコード内容を自動作成して流し込んだのですが
100万入れるのに数時間かかりました。
(PHPのループを止めてからが長い)
このまま1000万レコードを超えたいのですが
もっと高速に入れる方法ないですか?
先にPHPループでtextデータを作って逆ダンプで入れると早いですか?
セレクトは俊足でさすがmysqlと言えますがinsertが遅すぎます。
PHPのループでレコード内容を自動作成して流し込んだのですが
100万入れるのに数時間かかりました。
(PHPのループを止めてからが長い)
このまま1000万レコードを超えたいのですが
もっと高速に入れる方法ないですか?
先にPHPループでtextデータを作って逆ダンプで入れると早いですか?
あとInnoDBだったらautocommitはOFFにして、
1万行ごとにCOMMITして。
1万行ごとにCOMMITして。
MySQLに限らず、大量にINSERTするときはトランザクションにしたほうが速い。
トランクザションが早いと言うより、同時に行われるロック処理のおかげもある希ガス
ソースは俺
ソースは俺
>>207
NOT NULLならデフォルトが空文字列になるはず
NOT NULLならデフォルトが空文字列になるはず
ご教示お願いします!
カラムにカンマ割データが入っております。
id:val
1:1,2,3,12,211
2:3,2,11,212
3:2,4,111,331
valの中にカンマ割で入れられているデータの中の
任意数値を検索したいのですが
LIKE %11%で検索すると id 1.2.3全部マッチしてしまいます。
こういう場合、どう検索して良いのか教えてください。
REGEXPという手法を使うのでしょうか。
宜しくお願いします。
カラムにカンマ割データが入っております。
id:val
1:1,2,3,12,211
2:3,2,11,212
3:2,4,111,331
valの中にカンマ割で入れられているデータの中の
任意数値を検索したいのですが
LIKE %11%で検索すると id 1.2.3全部マッチしてしまいます。
こういう場合、どう検索して良いのか教えてください。
REGEXPという手法を使うのでしょうか。
宜しくお願いします。
いずれ使えるから、正規表現は学んでおいた方がいい。
今回の場合は
REGEXP "(^11|,11,|11$)"
今回の場合は
REGEXP "(^11|,11,|11$)"
>>210のテーブル自体が良くない気が
おい、おまえらは何のデータベース作ってんだ?
入れる内容が無いんだが
ネットで拾えるデータベースに流用できるエクセルのファイルとか教えろや
郵便番号とか誰でもつくってそうなつまんねーもんつくりたくねーから
おもしろいの教えれ
入れる内容が無いんだが
ネットで拾えるデータベースに流用できるエクセルのファイルとか教えろや
郵便番号とか誰でもつくってそうなつまんねーもんつくりたくねーから
おもしろいの教えれ
>>215
ん、そういった場合 IDで紐付けして別テーブルに
id:x_id:val
1:1:1
2:1:2
3:1:3
4:1:12
5:1:211
6:2:3
7:2:2
8:2:11
9:2:212
こういう感じで入れテクって事かな?
ん、そういった場合 IDで紐付けして別テーブルに
id:x_id:val
1:1:1
2:1:2
3:1:3
4:1:12
5:1:211
6:2:3
7:2:2
8:2:11
9:2:212
こういう感じで入れテクって事かな?
追記 213さんのも 前方^スタートと
最終適応の$のみなので、121の検索で当たっちゃう予感。
やはり カンマ割りで入れるのが間違いなのかな?
最終適応の$のみなので、121の検索で当たっちゃう予感。
やはり カンマ割りで入れるのが間違いなのかな?
やりたかった事書きます。
フォームからのチェックボックス値を保存しておきたかったのです。
radioとは違い複数あるためどうしようか考えていました。
PHPで行っているのですが、フォームから来た 配列をそのまま implode( ',', 配列) として入れちゃえ
んで、読み出したら explodeだと、安易に考えてました。
出来たのは良いけど、検索できない・・と こんな状況であります。
アドバイスお願いします。
フォームからのチェックボックス値を保存しておきたかったのです。
radioとは違い複数あるためどうしようか考えていました。
PHPで行っているのですが、フォームから来た 配列をそのまま implode( ',', 配列) として入れちゃえ
んで、読み出したら explodeだと、安易に考えてました。
出来たのは良いけど、検索できない・・と こんな状況であります。
アドバイスお願いします。
>>214
これはひどい
これはひどい
>>225
きたっ キタキターッ
いけました! REGREPすごいな 勉強します。
11と1の複合を探したいときは こんな感じでいいのですね
((REGEXP "(^11,|,11,|,11$|^11$)")AND(REGEXP "(^1,|,1,|,1$|^1$)" ))
ありがとうございましたっ!
きたっ キタキターッ
いけました! REGREPすごいな 勉強します。
11と1の複合を探したいときは こんな感じでいいのですね
((REGEXP "(^11,|,11,|,11$|^11$)")AND(REGEXP "(^1,|,1,|,1$|^1$)" ))
ありがとうございましたっ!
WHERE `val`
REGEXP '(^11,|,11,|,11$|^11$)'
AND `val`
REGEXP '(^1,|,1,|,1$|^1$)'
こうでした。 ありがとうございました
REGEXP '(^11,|,11,|,11$|^11$)'
AND `val`
REGEXP '(^1,|,1,|,1$|^1$)'
こうでした。 ありがとうございました
>>220
そっちの方がいいね
そっちの方がいいね
',' . implode( ',', 配列) . ','
として
%,11,%
で検索するのはどうか
として
%,11,%
で検索するのはどうか
>>228
これ、データの件数増えたら物凄く重そうだな・・・
これ、データの件数増えたら物凄く重そうだな・・・
http://www.irori.org/tool/mregexp.html は速いし便利。
create function する権限が要るけど。
create function する権限が要るけど。
MySQLであるテーブルのカラムの一部が以下のようになっているとします.
ここから,県名の多いものを上位3つ取得するのってどうすればいいですか?
神奈川
埼玉
神奈川
栃木
埼玉
栃木
茨城
埼玉
茨城
埼玉
埼玉
茨城
・
・
・
こういう感じで全国の県名がたくさん
ここから,県名の多いものを上位3つ取得するのってどうすればいいですか?
神奈川
埼玉
神奈川
栃木
埼玉
栃木
茨城
埼玉
茨城
埼玉
埼玉
茨城
・
・
・
こういう感じで全国の県名がたくさん
>>238
SELECT COUNT(*), 県名 FROM 全国 GROUP BY 県名 ORDER BY COUNT(*) DESC LIMIT 3;
かな。
俺も今MySQL勉強中なんだけど、SQL書くとき、大文字で書いてる?小文字?
Oracle 使う人が皆大文字だったから、今はそれに倣って俺も大文字にしてるけど。
SELECT COUNT(*), 県名 FROM 全国 GROUP BY 県名 ORDER BY COUNT(*) DESC LIMIT 3;
かな。
俺も今MySQL勉強中なんだけど、SQL書くとき、大文字で書いてる?小文字?
Oracle 使う人が皆大文字だったから、今はそれに倣って俺も大文字にしてるけど。
>>241
$handle->execute() の前後を Time::HiRes で測る、というのではだめ?
$handle->execute() の前後を Time::HiRes で測る、というのではだめ?
[tbl1]
id
1
2
3
[tbl2]
id | name | number
1 | 山田 | 18
[tbl3]
bango | name | getup
2 | 橋本 | 15時半
[tbl4]
num | name | memo
3 | 富永 | 遅刻しやすい
tblをベースに
id | name
1 | 山田
2 | 橋本
3 | 富永
のように取得したいのですが、何か良い方法はないでしょうか。
id
1
2
3
[tbl2]
id | name | number
1 | 山田 | 18
[tbl3]
bango | name | getup
2 | 橋本 | 15時半
[tbl4]
num | name | memo
3 | 富永 | 遅刻しやすい
tblをベースに
id | name
1 | 山田
2 | 橋本
3 | 富永
のように取得したいのですが、何か良い方法はないでしょうか。
tbl2 に id=2 or 3,(tbl3 に id=1 or3, tbl4 にid=1 or 2)の人はいるのか、いないのか。
つか項目数同じならいいか、unionでtbl1以外を全部まとめてtbl1とjoin
すみません。
オフライン環境でCGI動作テストをしようと
考えているのですが、この場合、MySqlを
どこか特殊なフォルダにインストールしないといけないとか
設定ファイルを書き変えないといけないとかありますか?
CGIからデータベースの読み出しテストをしたいと考えています。
オフライン環境でCGI動作テストをしようと
考えているのですが、この場合、MySqlを
どこか特殊なフォルダにインストールしないといけないとか
設定ファイルを書き変えないといけないとかありますか?
CGIからデータベースの読み出しテストをしたいと考えています。



類似してるかもしれないスレッド
- MySQL 総合 Part12 (1001) - [94%] - 2008/1/30 17:34 ○
- MySQL 総合 Part25 (947) - [94%] - 2017/6/18 6:30
- MySQL 総合 Part13 (996) - [94%] - 2008/6/10 21:02 ☆
- MySQL 総合 Part14 (1001) - [94%] - 2008/11/23 10:17 ☆
- MySQL 総合 Part17 (1001) - [94%] - 2010/6/10 20:47 ○
- MySQL 総合 Part18 (986) - [94%] - 2011/1/17 15:46
- MySQL 総合 Part19 (982) - [94%] - 2011/6/9 2:33
- MySQL 総合 Part26 (860) - [89%] - 2023/2/2 9:30
- MySQL 総合 Part20 (995) - [89%] - 2011/10/17 4:48
- MySQL 総合 Part21 (1001) - [89%] - 2011/12/25 22:16
- MySQL 総合 Part22 (1001) - [89%] - 2012/7/10 16:45
- MySQL 総合 Part23 (992) - [89%] - 2013/8/11 17:00
- MySQL 総合 Part24 (1010) - [89%] - 2015/2/14 4:46
- MySQL vs PostgreSQL Part2 (941) - [31%] - 2022/5/26 1:30 ○
トップメニューへ / →のくす牧場書庫について