《Mysql應用MySQL使用臨時表加速查詢的方法》要點:
本文介紹了Mysql應用MySQL使用臨時表加速查詢的方法,希望對您有用。如果有疑問,可以聯系我們。
本文實例講述了MySQL使用臨時表加速查詢的辦法.分享給大家供大家參考.具體分析如下:MYSQL教程
使用MySQL臨時表,有時是可以加速查詢的,下面就為您詳細介紹使用MySQL臨時表加速查詢的辦法.MYSQL教程
把表的一個子集進行排序并創建MySQL臨時表,有時能加速查詢.它有助于避免多重排序操作,而且在其他方面還能簡化優化器的工作.例如:
MYSQL教程
代碼如下:
SELECT cust.name,rcVBles.balance,……other columns?
SELECT cust.name,rcVBles.balance,……other columns?
FROM cust,rcvbles?
WHERE cust.customer_id = rcvlbes.customer_id?
AND rcvblls.balance>0?
AND cust.postcode>"98000"?
ORDER BY cust.name
如果這個查詢要被執行多次而不止一次,可以把所有未付款的客戶找出來放在一個臨時文件中,并按客戶的名字進行排序:
代碼如下:
SELECT cust.name,rcvbles.balance,……other columns?
SELECT cust.name,rcvbles.balance,……other columns?
FROM cust,rcvbles?
WHERE cust.customer_id = rcvlbes.customer_id?
AND rcvblls.balance>0?
ORDER BY cust.name?
INTO TEMP cust_with_balance
然后以下面的方式在臨時表中查詢:
代碼如下:
SELECT * FROM cust_with_balance
WHERE postcode>"98000"
臨時表中的行要比主表中的行少,而且物理順序就是所要求的順序,減少了磁盤I/O,所以查詢工作量可以得到大幅減少.
注意:臨時表創建后不會反映主表的修改.在主表中數據頻繁修改的情況下,注意不要丟失數據.MYSQL教程
希望本文所述對大家的MySQL數據庫程序設計有所贊助.MYSQL教程
維易PHP培訓學院每天發布《Mysql應用MySQL使用臨時表加速查詢的方法》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/13648.html