SQL質疑応答スレ 10問目
at DB
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
335:NAME IS NULL 10/07/27 17:38:55 品目 日付 ------------------------------- 酢だこ 7/20 酢だこ 6/20 まだこ 7/21 まだこ 7/1 まだこ 6/25 大だこ 7/1 いか 6/20 こんな感じのテーブルがあり、品目名に"だこ"を含むデータを出現頻度の高い順に取り出そうとしていますが、 select 品目,日付 from table where 品目 in (select 品目 from table 品目 like '%だこ%' group by 品目 order by count(品目) desc; で、やってみたのですが、遅すぎて使えませんでした。 何かいいやり方は無いでしょうか? お願い致します。 336:NAME IS NULL 10/07/27 18:50:49 like は前方一致じゃないとインデックスを使えない。 「○○だこ」のパターンがあらかじめ全部分かっていれば where 品目 in ('酢だこ','まだこ','大だこ') などにすればインデックス(があれば)使ってくれるはず。 337:NAME IS NULL 10/07/27 18:59:14 >>335 いまいち何がやりたいかわからんな select 品目,count(*) as 件数 from table where 品目 like '%だこ%' group by 品目 order by count(*) desc とかじゃダメなのか?
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5164日前に更新/116 KB
担当:undef