作者luowr (I should be guest..)
看板PHP
標題Re: [請益] 查詢最佳化問題
時間Mon Jan 1 22:42:52 2007
雖然不是很懂你的意思,看起來似乎只是 join
的問題,如果是這樣,豈不是在 where 下 A.name=B.name 條件即可??
據個人的經驗來看,能用 sql 能做到的效果當然也能透過程式做到(反之未必)
影響 sql 查詢速度的最主要因素是資料量太大而在查詢時造成 table scan
當然,這部份可以透過建 index 來解決。
※ 引述《hfnadkv (衝衝衝)》之銘言:
: 現在有二個table
: A table有3筆資料,B table有1000資料
: 每次查book,都必需對照B table
: 但這樣每次都要B table作1000次 I/O
: 所以就想到一個作法,A、B table都sort,
: 然後把B table為b 字首的字提出,再對照就好
: 這樣每次只要3次 I/O就好
: 不知道sql,能作出這樣的查詢嗎?還是一定要用程式去跑呢?
: 如果用程式來作,怎麼把第一個字母提出呢?
: A table B table
: name status name supply
: ______________ _______________
: book book
: buck buck
: cake boom
: cake
: cea
: cook
: .
: .
: .
: zoo
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.63.100.114
推 hfnadkv:如果量大的話100000,但其實透過這種方式,也許只要拿其中 01/01 22:44
→ hfnadkv:的1000筆來比對就好,主要是要玩最佳化這一塊~資料少的話 01/01 22:45
→ hfnadkv:感覺不出來,想把書上的理論coding出來啦!呵~ 01/01 22:47