 |
ถามเรื่อง query นานขนาดนี้ครับ ขอสอบถามข้อมูลหน่อยนะครับตอบข้อสงสัยผมด้วยครับ งงเต็ก |
|
 |
|
|
 |
 |
|
ลองใช้ join ธรรมดาอาจเร็วกว่า ถ้าไม่จำเป็นต้องใช้ left join นะครับ มันช้าเพราะ join มันสร้าง temp table ขึ้นใหม่ และลองเพิ่ม index ที่ฟีลที่ใช้ join กันดู
ได้ผลยังไง เอามาดูด้วยนะครับ 
|
 |
 |
 |
 |
Date :
2009-07-30 22:31:38 |
By :
pjgunner |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
field ที่ใช้ join ,field ที่ใช้ group ,field ที่ใช้ order สร้าง index รึยังครับ
|
 |
 |
 |
 |
Date :
2009-07-31 00:38:41 |
By :
natt_han |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
หลังจากสร้าง index แล้ว
แนะนำเพิ่มเติมนะครับ
ให้เอา table ที่น้อย และจำนวน rows คงที่มากที่สุด
อยู่ซ้ายครับ
และลองเอา Order by ออกก็ดี
แล้วให้ Report เป็นตัว Order by แทนครับ
ได้ผลอย่างไร แจ้งด้วยนะครับ
|
 |
 |
 |
 |
Date :
2009-07-31 08:19:14 |
By :
taobsd |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
index เยอะ ก็จะต้องมีเนื้อที่ในการเก็บ index เพิ่มขึ้น
และ ในการ insert ,update จะทำได้ช้าลง
ควรจะทำเฉพาะฟิลด์ที่จำเป็น เช่น ฟิลด์ที่ใช้ order,group ,where
มาตราฐานไม่เคยเห็นนะ ผมว่ามันขึ้นกับหลายปัจจัย query ซับซ้อนแค่ไหน ก็พิจารณาเอาเอง
|
 |
 |
 |
 |
Date :
2009-07-31 10:56:53 |
By :
natt_han |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมคงต้องขอคำแนะนำจากคุณ TAOBSD ละ เจ๋งจริงๆ sql ผมยิ่งห่วยๆ อยู่
|
 |
 |
 |
 |
Date :
2009-07-31 11:31:10 |
By :
plakrim |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ไม่ขนาดนั้นหรอกครับคุณ PlaKriM
ผมได้แต่แนะนำพื้นฐานที่เราอาจจะลืมไปเท่านั้นเองครับ
|
 |
 |
 |
 |
Date :
2009-07-31 16:11:12 |
By :
taobsd |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมสงสัยว่าเวลาทำ index ควรทำทั้งสองตารางที่ join กันเลยไหมครับ หรือว่าทำ index แค่ตารางเดียวครับ
|
 |
 |
 |
 |
Date :
2009-10-30 16:49:17 |
By :
kzaabza |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอเก็บเกี่ยวความรู้หน่อย 
เพิ่งกำลังงงเกี่ยวกับ index พอดี
|
 |
 |
 |
 |
Date :
2009-10-30 18:15:51 |
By :
xbeginner01 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|