文章詳情頁
mysql建表索引問題求助
瀏覽:141日期:2022-06-11 15:09:14
問題描述
小弟建立數據表索引遇到幾個問題,求助下大家:
1.
UPDATE table SET version = 2 WHERE id = ? AND version =?
這個語句里面id是自增長id,version是樂觀鎖。此時是應該給version建立一個單獨索引,還是和id建聯合索引,還是不需要建索引。
SELECT * FROM table WHERE a in () AND b =? ORDER BY c DESC
in的話應該是用不到索引的吧,這個怎么建?
SELECT * FROM tabler WHERE a = ? AND b > ? AND b < ? ORDER BY c DESC
這個如何建索引
問題解答
回答1:1.給verson來單獨索引就行。由於id是主鍵,而且唯一,所以索引效率其實最高。2.in是可以開啟索引,但是當in達到一定數量,所以可能會失效3.a b單獨做索引。或者 a和b做聯合索引
回答2:一般情況下單獨給id字段創建索引就可以了。如果根據業務場景,能預計到每個id的修改次數非常多,可以把id,version創建聯合索引。
相關文章:
1. javascript - vuejs+elementui 購物車價格計算,點擊加減號修改數量總價都不會改變,但是計算執行了2. css右浮動字的順序顛倒了3. MySQL主鍵沖突時的更新操作和替換操作在功能上有什么差別(如圖)4. html5和Flash對抗是什么情況?5. javascript - 我是做web前端的,公司最近有一個項目關于數據統計的!6. ios - 類似微博首頁,一張圖的時候是如何確定圖大小的?7. javascript - 如何使用loadash對[object,object,object]形式的數組進行比較8. javascript - vue過渡效果 css過渡 類名的先后順序9. javascript - 在ie下為什么會出現這種情況呢 《 無法獲取未定義或 null 引用的屬性“length”》 ?請大神指教。10. 數據庫 - Mysql的存儲過程真的是個坑!求助下面的存儲過程哪里錯啦,實在是找不到哪里的問題了。
排行榜
