SQLなら俺に訊け [無断転載禁止]©2ch.net (457レス)
SQLなら俺に訊け [無断転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1499985653/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
390: デフォルトの名無しさん [sage] 2025/01/21(火) 11:15:04.33 ID:+xYYoS0+ >>389 DBの構成上、主キーであれば最低限1つのインデックスは張られる それはPK1,PK2,PK3全部揃ったときにB木を辿れればいいだけなので、6(=3P3)通りのどれかだが、 何もなければ PK1->PK2->PK3 の1つのインデックスになる この場合、PK1,PK2 のセットならインデックスが使えるが、今回のように PK2, Pk3 のセットだと使えない これはクエリプランを見れば判断出来る SQLiteだとこのケースでは上記の通り というかCREATE INDEX時(CREATE TABLE時)に使われ方を予測する事は不可能なので、 DBとしては、記述通りPK1->PK2->PK3で一つ作るか、全組み合わせを作っておくかしか出来ない よく使われる検索に対して自動的にインデックスを作成して高速化してくれるDBがあるのかもしれんが俺は知らん http://mevius.5ch.net/test/read.cgi/tech/1499985653/390
399: 警備員[Lv.3][新芽] [sage] 2025/01/22(水) 01:45:12.43 ID:x9n06qn/ >>390 >>397 ありがとうございます 最左のカラムを検索キーとするかがポイントなんですね 当初は>>390での指摘がピンときていませんでした 合間のレスで「仮に(PK1,PK3)で検索し」は迂闊でした いまは手元に試験用のコードがありませんが、最左のカラムを含んでいなかったと思います SQLをずいぶん自由に書けるようになったと思っていましたが、テーブル、インデックスの作成がこんなに大切だったと知りました… http://mevius.5ch.net/test/read.cgi/tech/1499985653/399
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.017s