私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ【この先一体】MySQL 総合 Part15【どうなるの】
mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 : ○
レスフィルター : (試験中)
オレはLEFT JOINを多用しているけど、知人はINNER JOINを多用していると言われた。
INNER JOINのほうが使いやすいのかな・・・
もちろん状況にもよるだろうけど。
INNER JOINのほうが使いやすいのかな・・・
もちろん状況にもよるだろうけど。
>>653,654
うわー、すごい!
聴いたことはあったんですが理解できなくて手を付けていませんでした。>JOIN
こういう状況で使うんですね。 自分でもう一度確認し直します、ありがとうございました!
うわー、すごい!
聴いたことはあったんですが理解できなくて手を付けていませんでした。>JOIN
こういう状況で使うんですね。 自分でもう一度確認し直します、ありがとうございました!
アスタリスクで書いたらそうなるね。
手抜きしないで
select t1.id, t1.hoge, t1.fuga, t2.foo, t2.bar
と必要な列だけ書きましょう。
ちなみにうちの会社では「select *」はコーディング規約で禁止されてます。
手抜きしないで
select t1.id, t1.hoge, t1.fuga, t2.foo, t2.bar
と必要な列だけ書きましょう。
ちなみにうちの会社では「select *」はコーディング規約で禁止されてます。
>>662
そんなもん、クラス化(ライブラリか)しておいたらいいでしょう。
また、最初の一発目も、desc テーブル名とかでカラムリストとって、
整形すればさほど難しくはない。
なにより、*で手抜きだけはするなと言うこと。それをやったら許さんぞ。
そんなもん、クラス化(ライブラリか)しておいたらいいでしょう。
また、最初の一発目も、desc テーブル名とかでカラムリストとって、
整形すればさほど難しくはない。
なにより、*で手抜きだけはするなと言うこと。それをやったら許さんぞ。
>>664
クラス化っていうのはphpとかのプログラム側で関数化するってことですよね?(mysqlの用語ではなくて)
>最初の一発目も、desc テーブル名とかでカラムリストとって
ってなんですか?
クラス内のクエリ文を手作業で、t1.col1,t1.col2,t1.col3,t1.col4,…って書いていく時に、
テーブル構造を出力して見ながらやろうっていう事ですよね?
クラス化っていうのはphpとかのプログラム側で関数化するってことですよね?(mysqlの用語ではなくて)
>最初の一発目も、desc テーブル名とかでカラムリストとって
ってなんですか?
クラス内のクエリ文を手作業で、t1.col1,t1.col2,t1.col3,t1.col4,…って書いていく時に、
テーブル構造を出力して見ながらやろうっていう事ですよね?
>>665
見ながらやるんじゃなくて、テーブル構造をコピペしてテキストエディタかなんかでマクロを使うか、
sed等で置換するかして機械的な処理で整形してください。
という意味です。がんばってね。ここで手を抜かないことが大事だよ。
見ながらやるんじゃなくて、テーブル構造をコピペしてテキストエディタかなんかでマクロを使うか、
sed等で置換するかして機械的な処理で整形してください。
という意味です。がんばってね。ここで手を抜かないことが大事だよ。
あちゃー
オレも面倒なときはつい * を使ってしまうわw
* と 個別にカラムを指定するのって速度的に違いはあるのかな?
感覚的に * のほうが処理速度は速そうだけど・・・。
オレも面倒なときはつい * を使ってしまうわw
* と 個別にカラムを指定するのって速度的に違いはあるのかな?
感覚的に * のほうが処理速度は速そうだけど・・・。
select対象列がすべてインデックスの中に入っていると、
テーブルアクセスをスキップできるのでとても速い。
select *してしまうと実テーブルを読まざるを得ない。
カバーリングインデックスというテクニックです
テーブルアクセスをスキップできるのでとても速い。
select *してしまうと実テーブルを読まざるを得ない。
カバーリングインデックスというテクニックです
MySQL 5.1 にて
CREATE TABLE `word_count` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`word` varchar(12) NOT NULL,
`count` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `word` (`word`)
)
と言うテーブルで、
select * from word_count where instr('ここに文章が入ります',word);
を実行すると、key が使われなくて速度が出ません。
もっと効率よくできる書き方はありませんか?
CREATE TABLE `word_count` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`word` varchar(12) NOT NULL,
`count` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `word` (`word`)
)
と言うテーブルで、
select * from word_count where instr('ここに文章が入ります',word);
を実行すると、key が使われなくて速度が出ません。
もっと効率よくできる書き方はありませんか?
Tritonnでがんばってください
http://qwik.jp/tritonn/
http://qwik.jp/tritonn/
>>676
http://dev.mysql.com/sources/doxygen/mysql-5.1/trie_8c-source.html
これですか? ちょっと調べてみますが、具体的な使い方を教えていただけると助かります。
http://dev.mysql.com/sources/doxygen/mysql-5.1/trie_8c-source.html
これですか? ちょっと調べてみますが、具体的な使い方を教えていただけると助かります。
質問です
MySQL5.4の機能であるBKAを使用したのだが
併せてsennaの日本語全文検索機能も使いたいと思っています。
5.4にはsennnaのパッチが当てられないので困っていますが
対応方法ほか良い案などありますでしょうか。
現在はTorittonの5.0,67を使ってますが外部結合が遅い・・・
MySQL5.4の機能であるBKAを使用したのだが
併せてsennaの日本語全文検索機能も使いたいと思っています。
5.4にはsennnaのパッチが当てられないので困っていますが
対応方法ほか良い案などありますでしょうか。
現在はTorittonの5.0,67を使ってますが外部結合が遅い・・・
トリガーについて教えてください
MySQL 5.1.35 Windows を使って勉強中なんですけど
table shouhin_master ←マスターテーブル
code int
name varchar(20)
~
delete_flg tinyint
table data_tbl ←データテーブル
code int
data1
~
外部制約でshouhin_masterからcodeを消した時
data_tblの該当するcodeデータを消すようにはしているのですが。
マスターテーブルのdelete_flg に9を立てた時にトリガーを使って
data_tblの該当するcodeのデータを削除する事出来ますか?
出来るとしたら、どういうトリガーを書けば良い?
MySQL 5.1.35 Windows を使って勉強中なんですけど
table shouhin_master ←マスターテーブル
code int
name varchar(20)
~
delete_flg tinyint
table data_tbl ←データテーブル
code int
data1
~
外部制約でshouhin_masterからcodeを消した時
data_tblの該当するcodeデータを消すようにはしているのですが。
マスターテーブルのdelete_flg に9を立てた時にトリガーを使って
data_tblの該当するcodeのデータを削除する事出来ますか?
出来るとしたら、どういうトリガーを書けば良い?
>>679
パフォーマンス試験じゃなければ、そういう構築例は仮想マシンでやればいいから1台あればいいんじゃね?
パフォーマンス試験じゃなければ、そういう構築例は仮想マシンでやればいいから1台あればいいんじゃね?
>>680
NewとかOldとか使え
begin
if new.delete_flg = 9 then
delete from data_tbl where code = new.code;
end if;
end
NewとかOldとか使え
begin
if new.delete_flg = 9 then
delete from data_tbl where code = new.code;
end if;
end
>>682
ありがとうです。勉強させて頂きます。
ありがとうです。勉強させて頂きます。
どこでJOINしたら良いんでしょうか?
3つまでの解説はよく見かけるんですが、4つ以上は見つけられなくて困ってます
3つまでの解説はよく見かけるんですが、4つ以上は見つけられなくて困ってます
お礼書き忘れた。
>>685 ありがとうございます
>>685 ありがとうございます
どこでも何も、そのまま続けて書けばいい。
FROM ~ JOIN ~ JOIN ~ JOIN ~
解説以前に、まずはマニュアル読むべき。
FROM ~ JOIN ~ JOIN ~ JOIN ~
解説以前に、まずはマニュアル読むべき。
コレってむしろphp側の問題ですねorz
スレ違いでした。
phpのスレで訊いてきます。
スレ違いでした。
phpのスレで訊いてきます。
ランタイム情報の
Slave_runningの値「ON」か「OFF」をmysqlで求めるには、
どのようなクエリを渡せばいいのでしょうか?
Slave_runningの値「ON」か「OFF」をmysqlで求めるには、
どのようなクエリを渡せばいいのでしょうか?
show status like 'Slave_running';
を、それぞれのプログラミング言語で
select文と同じように実行すれば取れるよ。
を、それぞれのプログラミング言語で
select文と同じように実行すれば取れるよ。
相談です。
16桁の数字からなる商品番号を格納するカラムのデータ型は何がいいでしょうか?
(1) BIGINT型で、16桁の整数として格納する
(2) CHAR(16)型で、16個の文字からなる文字列として格納する
(1)と(2)と、どちらが検索が速いでしょうか?
データ件数は、10万~100万件程度です。
アドバイスよろしくお願いします。
16桁の数字からなる商品番号を格納するカラムのデータ型は何がいいでしょうか?
(1) BIGINT型で、16桁の整数として格納する
(2) CHAR(16)型で、16個の文字からなる文字列として格納する
(1)と(2)と、どちらが検索が速いでしょうか?
データ件数は、10万~100万件程度です。
アドバイスよろしくお願いします。
>>697
アドバイス、ありがとうございます。
16桁の商品番号の格納は、BIGINT型で行ってみます!(・∀・)
一応ベンチマークも測ってみようと思って、今100万個のテストデータを作成中ですが、
MySQL5のストアドプロシージャとかで、乱数を一気に100万個ぐらい作る方法ありますかね?
=とりあえずPHPスクリプトで、5000個ずつINSERTしてます><
アドバイス、ありがとうございます。
16桁の商品番号の格納は、BIGINT型で行ってみます!(・∀・)
一応ベンチマークも測ってみようと思って、今100万個のテストデータを作成中ですが、
MySQL5のストアドプロシージャとかで、乱数を一気に100万個ぐらい作る方法ありますかね?
=とりあえずPHPスクリプトで、5000個ずつINSERTしてます><
Tritonn使ってるんだけど
Where ColName Like '%検索ワード%'
と
Where match(ColName) against('検索ワード')
って結果が違います
これって正常なこと?
何か根本的に間違ってたりしますか?
Where ColName Like '%検索ワード%'
と
Where match(ColName) against('検索ワード')
って結果が違います
これって正常なこと?
何か根本的に間違ってたりしますか?
すまん、
書き込んだ直前以降はちゃんと同じ値になってました。
なんか構文間違ってたんだと思います。
書き込んだ直前以降はちゃんと同じ値になってました。
なんか構文間違ってたんだと思います。
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
みんなの評価 : ○類似してるかもしれないスレッド
- 【MySQL】下らねぇ質問はID出して書き込みやがれ 2 (985) - [21%] - 2012/10/17 7:16
- 【】 MySQLを買収したSunを買収したOracleを 【】 (112) - [19%] - 2023/1/22 14:15
トップメニューへ / →のくす牧場書庫について