SQLなら俺に訊け [無断転載禁止]©2ch.net (457レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

398: 01/22(水)00:28 ID:VcBzYOin(1/7) AAS
>>396
というか何がやりたいのか不明な事になってるが、

> 検索キーとしてPK2とPK3だけをよく用いるとき、主キー以外にもインデックス(PK2, PK3)を作成すべきですか?
であれば遅い(=インデックスがない)と分かったのだからインデックス作ればいいだけでは

>>393
> 多分見方が分かりませんがw
見方なんて分かる必要なくて、
1. インデックスがある検索に対してクエリプランを出させる(=インデックス検索)
2. インデックスがない検索に対してクエリプランを出させる(=リニア探索)
3. 実際に自分がやりたい検索が、1,2のどちらに似てるか見る、特に先頭付近
省5
402
(2): 01/22(水)07:08 ID:VcBzYOin(2/7) AAS
>>399
> 最左のカラムを検索キーとするかがポイントなんですね
違う。というか理由を理解ではなく結果を暗記しようとする辺り、文系馬鹿の匂いがするが、
とにかく、「B木」でググって記事を読め
現在のプログラミングでは基本で、そこそこ初心者が記事を書くネタになってるから、いくらでも出てくる
そしてVBAにもハッシュはあるだろ。ググるとScripting.Dictionaryと出てくるが、中身は同様にB木のはずだから、
何か知らんが速いという事で済まさず、この機会にちゃんと理解しろ

そしてその言い方なら、
左側が全部揃ってるかがポイント
が正解になる
省1
404: 01/22(水)10:44 ID:VcBzYOin(3/7) AAS
>>403
> 二分木をイメージして「??」でしたが
いやそういう問題じゃない
というか相変わらずインデックスが何かさっぱり分かってないようだが、単なるリーフへの探索手段だぞ

実際はこんなキーの分け方はあり得ないが、馬鹿でも分かるように敢えて例とすると、
お前が名詞を1,000枚持ってて、あいうえお順に格納して保管してるとする
これは主キーが複合キーの{PK1:苗字1文字目, PK2:苗字2文字目以降, PK3:名前}として、
石破茂を{'石','破','茂'},
岸田文雄を{'岸','田','文雄'}
と格納されてる状態と見なせる
省6
408: 01/22(水)11:27 ID:VcBzYOin(4/7) AAS
>>405
> 今回の複合インデックスの件について二分木は論外だとは分かっています
いやそうじゃねえ
そもそも論外でもないし、インデックスが二分木でも問題ないし、この場合には二分木もB木の一種だよ
B木とは深さ方向が一定になるように調節されてるものの呼称であり、実際は二分木が多数だろうし

まあ君に理解する気がないのは分かったし、実際に理解しなくても済む人達も大勢居るのも事実
ただプログラマならどのみちいつか引っかかるから、この機会にちゃんと理解しといた方が得だぞという話
君がどうするかは君が決める事
410
(1): 01/22(水)12:42 ID:VcBzYOin(5/7) AAS
>>407,409
そうじゃない、というかそこは問題ではない

というのが分からないのが問題なのだろうが、君は全てを「具象」で捉えて「暗記」してるだけだろ、これは典型的な文系のやり方
本来は「抽象」で捉えて「理解」しないといけない項目
「B木」も「二分木」も(昔ながらのハッシュ関数を使った)「ハッシュ」も別物ではなくて、
同一の物を分類してるだけ、しかも直交もしてない

話を戻すと、問題は、
・DBのインデックス動作が分からない
・どうインデックスが作成されるかも分からないし、
・どういうクエリならインデックスが使われるのかも分からない
省16
411: 01/22(水)12:49 ID:VcBzYOin(6/7) AAS
>>410訂正
× 同一の物
○ 同種の物
無駄に絡まれそうなので念のため

まあ俺がどう論外である事を証明したところで、
君がインデックスを理解する事には繋がらないよ
君は努力の方向を間違ってる
(ネットにはこのタイプも多いけども)
414: 01/22(水)18:46 ID:VcBzYOin(7/7) AAS
>>413
> 複合主キーの最左から順に一連の(部分)フィールドで検索できない場合は、別途インデックスを設定することで効果が得られることを確認しました
当たり前、というかDBの使い方の初段階で説明/理解すべき事柄

> 途中、どうも複合主キーの検索が遅く、複合主キーかフィールドを2つ削除して
> と書きましたが、少し理解するうちに、フィールドを削除せずとも順序を入れ替えることで高速化したこと
そうじゃない
ひととおり設計を理解した上で弄くり回して理解を深めるのなら身に付くが、
今の君のように、何も理解してない状態で試行錯誤したところで時間の無駄でしかないよ
(それよりは記事を漁って理解するまで何度も読み込む努力をした方が何倍もいい)

とはいえ、現実問題としてaccessの実アプリの方が優先なのは分かる
省13
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s