最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQL優(yōu)化的N種方法(小結(jié))

 更新時間:2022年08月11日 11:04:24   作者:識時務(wù)者-HJJ  
本文主要介紹了SQL優(yōu)化的N種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1.SQL語句中IN包含的值不應(yīng)過多:

例如:select id from handsome where number in(1,2,3) 對于連續(xù)的數(shù)值,能用between就不要用in了。

2.SELECT語句務(wù)必指明字段名稱:

禁止用 * 來查詢 ,禁止用 * 來查詢 ,禁止用 * 來查詢 ,重要的事情說三遍, 查找哪個字段,就寫具體的字段。

3.只查詢一條數(shù)據(jù)的時候,使用limit 1

【這個很有用】

4.避免在where子句中對字段進行null值判斷

5.避免在where子句中對字段進行表達式操作:

select  id from user  WHERE id*100=500;

上面的sql對字段就行了算術(shù)運算,這會造成引擎放棄使用索引,建議改成:

select  id from user  WHERE id=500/100;

6.對于聯(lián)合索引來說,要遵守最左前綴法則:

例如組合索引(id,name,sex) 使用的時候,可以id 或者id,name 。禁止直接name,或者sex會導(dǎo)致聯(lián)合索引失敗

注意: id, name,sex 這三個字段填寫順序不會有影響, mysql會自動優(yōu)化成最左匹配的順序

前三條sql都能命中索引,中間兩條由于不符合最左匹配原則,索引失效

最后一條sql 由于有最左索引id 所以索引部分成功,部分失效. id字段索引使用成功

explain select * from ?`user_test` where uid=10 ?;?
explain select * from ?`user_test` where uid=10 and name='識時務(wù)者';?
explain select * from ?`user_test` where uid=10 and name='識時務(wù)者' and phone='13047967256';?

explain select * from ?`user_test` where name='識時務(wù)者' and phone='13047967256';?
explain select * from ?`user_test` where name='識時務(wù)者';?

explain select * from ?`user_test` where uid=10 and phone='13047967256';?

7.盡量使用inner join,避免left join

如果連接方式是inner join,在沒有其他過濾條件的情況下MySQL會自動選擇小表作為驅(qū)動表,但是left join在驅(qū)動表的選擇上遵循的是左邊驅(qū)動右邊的原則,即left join左邊的表名為驅(qū)動表。

8.注意范圍查詢語句:

對于聯(lián)合索引來說,如果存在范圍查詢,比如between、>、<等條件時,會造成后面的索引字段失效。

解決辦法: 業(yè)務(wù)允許的情況下,使用 >= 或者<= 這樣不影響索引的使用

9.不建議使用%前綴模糊查詢:

例如 : LIKE“%name”或者LIKE“%name%”,這種查詢會導(dǎo)致索引失效而進行全表掃描。但是可以使用LIKE “name%”。

10.在 where 子句中使用 or 來連接條件,如果or連接的條件有一方?jīng)]有索引,將導(dǎo)致引擎放棄使用索引而進行全表掃描
解決辦法: 將or連接的雙方都建立索引,就可以使用

11.應(yīng)盡量避免在where子句中對字段進行函數(shù)操作,這將導(dǎo)致引擎放棄使用索引而進行全表掃描

12.字符串類型的字段 查詢的時候如果不加引號’’ ,會導(dǎo)致自動進行隱式轉(zhuǎn)換,然后索引失效

到此這篇關(guān)于SQL優(yōu)化的N種方法(小結(jié))的文章就介紹到這了,更多相關(guān)SQL 優(yōu)化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • sql server 中合并某個字段值的實例

    sql server 中合并某個字段值的實例

    sql server 中合并某個字段值的實例,需要的朋友可以參考一下
    2013-03-03
  • SQL?Server數(shù)據(jù)庫如何查看表的數(shù)據(jù)內(nèi)容

    SQL?Server數(shù)據(jù)庫如何查看表的數(shù)據(jù)內(nèi)容

    查詢數(shù)據(jù)在數(shù)據(jù)庫的操作中相當重要的,在項目實訓(xùn)中查詢是經(jīng)常要用到的,所以掌握數(shù)據(jù)庫的查詢是基本要求,這篇文章主要給大家介紹了關(guān)于SQL?Server數(shù)據(jù)庫如何查看表的數(shù)據(jù)內(nèi)容的相關(guān)資料,需要的朋友可以參考下
    2023-11-11
  • SQL Server數(shù)據(jù)庫錯誤829的修復(fù)辦法

    SQL Server數(shù)據(jù)庫錯誤829的修復(fù)辦法

    SQL Server 錯誤 829 是與 SQL Server 頁面相關(guān)的錯誤,當用戶嘗試自動修復(fù)主數(shù)據(jù)庫中的頁面,但由于某種原因而失敗時,可能會發(fā)生 SQL Server 錯誤 829,所以本文給大家介紹了如何修復(fù) SQL Server 數(shù)據(jù)庫錯誤 829,需要的朋友可以參考下
    2024-08-08
  • SQL Server 海量數(shù)據(jù)導(dǎo)入的最快方法

    SQL Server 海量數(shù)據(jù)導(dǎo)入的最快方法

    這篇論壇文章(賽迪網(wǎng)技術(shù)社區(qū))詳細講解了SQL Server海量數(shù)據(jù)導(dǎo)入的最快方法,更多內(nèi)容請參考下文
    2008-12-12
  • SQL Server解析XML數(shù)據(jù)的方法詳解

    SQL Server解析XML數(shù)據(jù)的方法詳解

    這篇文章主要介紹了SQL Server解析XML數(shù)據(jù)的方法,結(jié)合實例形式詳細分析了SQL Server針對xml數(shù)據(jù)的讀取,遍歷,刪除,查找等常用操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • SQL Server 2012  開窗函數(shù)

    SQL Server 2012 開窗函數(shù)

    這篇文章主要介紹了SQL Server 2012 開窗函數(shù)功能的實例代碼,具體代碼如下所示
    2017-01-01
  • SQL Server的事務(wù)操作隔離模式介紹

    SQL Server的事務(wù)操作隔離模式介紹

    這篇文章主要介紹了SQL Server的事務(wù)操作隔離模式介紹,本文講解了在何種情況下使用隔離模式,有哪些隔離模式,如何控制隔離模式等問題,需要的朋友可以參考下
    2014-08-08
  • sqlserver中查找所有包含了某個文本的存儲過程

    sqlserver中查找所有包含了某個文本的存儲過程

    我想查找所有使用了sp_a 的存儲過程。右擊sp_a->view dependencies-> 選擇 view objects that depend on [sp_a] 你會發(fā)現(xiàn),有時候結(jié)果不能夠全部列出來,不能夠找到所有使用了sp_a的其他存儲過程。
    2010-05-05
  • SQL CONVERT轉(zhuǎn)化函數(shù)使用方法小結(jié)

    SQL CONVERT轉(zhuǎn)化函數(shù)使用方法小結(jié)

    此樣式一般在時間類型(datetime,smalldatetime)與字符串類型(nchar,nvarchar,char,varchar) 相互轉(zhuǎn)換的時候才用到.
    2010-05-05
  • 使用SQL SERVER存儲過程實現(xiàn)歷史數(shù)據(jù)遷移方式

    使用SQL SERVER存儲過程實現(xiàn)歷史數(shù)據(jù)遷移方式

    這篇文章主要介紹了使用SQL SERVER存儲過程實現(xiàn)歷史數(shù)據(jù)遷移,介紹了歷史數(shù)據(jù)遷移的基本概念及目的,對SQL SERVER存儲過程歷史數(shù)據(jù)遷移知識感興趣的朋友參考下吧
    2021-09-09

最新評論

瑞安市| 凤庆县| 镇远县| 霞浦县| 施秉县| 杭锦旗| 安仁县| 盐源县| 柞水县| 阿尔山市| 荆州市| 澄迈县| 大港区| 怀仁县| 吉隆县| 绍兴市| 同江市| 安多县| 木里| 轮台县| 庆城县| 乌拉特后旗| 清远市| 旬阳县| 深圳市| 清徐县| 肥西县| 新化县| 山东省| 万安县| 安化县| 巩留县| 龙州县| 屏边| 樟树市| 保亭| 北京市| 阳东县| 尼木县| 湄潭县| 自贡市|