国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

關于sql優化的整理 ------后期繼續整理

2024-07-21 02:51:17
字體:
來源:轉載
供稿:網友
1 在索引字段上使用模糊查詢: number_id like '%alibab%' 這種全模糊不建議在數據庫中查詢, 可以用solr框架進行 如果非要在數據庫中查, 可以在數據庫群中只讀節點上進行查詢, 防止占用太多的主業務數據庫資源2 盡量不訪問索引之外的字段 索引(member_id,subject) select subject from offer where member_id=234 這種查詢就優于下面的語句 select subject , gmtcreaated from offer where member_id=2343 計算count(id)有時比count(*)慢 count(id) === count(1) where id is not null 如果沒有(id)索引, 那么會用全表掃描, 而count(*)會使用最優的索引進行索引快速掃描4 正確使用stop機制 判斷member_id在offer表中是否存在記錄: select count(*) from offer where member_id=234 limit 1     優于 selecct count(*) from offer where member_id=234 因為第一條sql會得到第一條符合條件的記錄后停止5 分頁: 一般寫法: select * from t where selerid=100 limit 100000,20 普通的limit M,N的翻頁寫法, 往往在越往后面翻頁的過程中速度越慢, 因為MySQL會讀取表中的前M+N條數據, M越大,性能就越差 優化方法:  select t1.* from t t1    (select id from t selleid=100 limit 10000,20) t2  where t1.id=t2.id; 優化后的翻頁寫法, 先查詢翻頁中需要的N條數據的主鍵id, 在根據主鍵id回表查詢所需要的N條數據, 此過程中查詢N條數據的逐漸id在索引中萬和城能, 6 數據量不大時, 在數據庫中進行搜索, 為字段建立索引, 并按照索引進行查詢  數據量大時, 可以用第三方搜索技術進行操作, 如solr或司勞克斯 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙里县| 新蔡县| 雷波县| 宁晋县| 大关县| 淮北市| 崇礼县| 武穴市| 清水县| 临猗县| 宝兴县| 康马县| 中西区| 屯留县| 平湖市| 兰溪市| 辉南县| 抚顺县| 博野县| 富川| 昂仁县| 高青县| 卢湾区| 读书| 衡山县| 抚州市| 文安县| 格尔木市| 玉树县| 资中县| 伊金霍洛旗| 射阳县| 太白县| 伊春市| 龙门县| 安康市| 阿拉尔市| 南昌市| 邓州市| 平凉市| 罗平县|