Mysql查詢技巧:1。如果比較運(yùn)算符可以使用"=",則不必使用" ";2.當(dāng)您知道只有一個(gè)查詢結(jié)果時(shí),請(qǐng)使用“限制1”;3.為該列選擇適當(dāng)?shù)臄?shù)據(jù)類型;4.盡量避免使用“select *”;5.使用LIMIT實(shí)現(xiàn)分頁(yè)邏輯。
Mysql查詢技巧:
(資料圖片)
1技能比較運(yùn)算符可以使用“=”代替“”。
="增加了使用索引的可能性。
提示:如果您知道只有一個(gè)查詢結(jié)果,請(qǐng)使用“LIMIT 1”
如果“LIMIT 1”找到相應(yīng)的結(jié)果,它可以阻止全表掃描繼續(xù)掃描。
技巧3為列選擇合適的數(shù)據(jù)類型。
如果可以使用TINYINT,就不需要SMALLINT了。如果可以使用SMALLINT,就不需要INT。要知道,磁盤和內(nèi)存消耗越小越好。
技巧4將一個(gè)大的DELETEUPDATE或INSERT查詢變成幾個(gè)小查詢
能寫(xiě)出幾十行或者幾百行的SQL語(yǔ)句嗎?但是,為了獲得更好的性能和更好的數(shù)據(jù)控制,您可以將它們變成多個(gè)小查詢。
5提示如果結(jié)果集允許重復(fù),請(qǐng)使用UNION ALL代替UNION。
因?yàn)閁NION ALL的效率比UNION高。
6個(gè)提示:請(qǐng)保持SQL語(yǔ)句一致,以便獲得同一結(jié)果集的多次執(zhí)行。
這樣做的目的是充分利用查詢緩沖區(qū)。
7個(gè)提示盡量避免使用“選擇*”
如果沒(méi)有查詢表中所有的列,盡量避免使用SELECT *因?yàn)樗梢話呙枵麄€(gè)表,索引不能有效使用,增加了數(shù)據(jù)庫(kù)服務(wù)器的負(fù)擔(dān)以及它和應(yīng)用客戶端之間的網(wǎng)絡(luò)IO開(kāi)銷。
技巧WHERE子句中的列被盡可能多地索引
就“試試”。哦,不是所有的專欄。因地制宜,因?yàn)橛袝r(shí)候指標(biāo)太多也會(huì)降低性能。
技巧9聯(lián)接子句中的列被盡可能多地索引
再試一次。哦,不是所有的專欄。
技巧10“排序依據(jù)”列被盡可能多地索引。
如果對(duì)順序列進(jìn)行索引,它的性能也會(huì)更好。
技巧11使用LIMIT實(shí)現(xiàn)分頁(yè)邏輯
它不僅提高了性能,而且減少了數(shù)據(jù)庫(kù)和應(yīng)用程序之間不必要的網(wǎng)絡(luò)傳輸。
技巧12使用解釋關(guān)鍵字檢查執(zhí)行計(jì)劃
解釋可以檢查索引使用情況和掃描的行。
技巧13舍入,舍入和保留MySQL數(shù)字的N個(gè)小數(shù)位
更多免費(fèi)學(xué)習(xí)推薦:mysql教程(視頻)
以上就是mysql語(yǔ)句查詢的詳細(xì)技巧!
來(lái)源:php中文網(wǎng)站
關(guān)鍵詞:
版權(quán)與免責(zé)聲明:
1 本網(wǎng)注明“來(lái)源:×××”(非商業(yè)周刊網(wǎng))的作品,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),本網(wǎng)不承擔(dān)此類稿件侵權(quán)行為的連帶責(zé)任。
2 在本網(wǎng)的新聞頁(yè)面或BBS上進(jìn)行跟帖或發(fā)表言論者,文責(zé)自負(fù)。
3 相關(guān)信息并未經(jīng)過(guò)本網(wǎng)站證實(shí),不對(duì)您構(gòu)成任何投資建議,據(jù)此操作,風(fēng)險(xiǎn)自擔(dān)。
4 如涉及作品內(nèi)容、版權(quán)等其它問(wèn)題,請(qǐng)?jiān)?0日內(nèi)同本網(wǎng)聯(lián)系。