国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

mysql - sql判斷某一條數(shù)據(jù)的一個(gè)字段值,是在sql中限制條件然后判斷數(shù)量、還是直接檢索這個(gè)字段,哪個(gè)效率最高?

瀏覽:89日期:2022-06-20 09:21:12

問題描述

要判斷某一條數(shù)據(jù)的某一個(gè)字段的值,是在sql中限制條件然后判斷數(shù)量、還是直接檢索這個(gè)字段,哪個(gè)效率最高?舉例:A表中,要判斷id=1的數(shù)據(jù)flag是1還是0,flag的值只能是1或0。以下兩個(gè)sql哪個(gè)銷量高?1.在sql中限制條件然后判斷數(shù)量

select count(*) from A where id = 1 and flag = 1;

2.直接檢索這個(gè)字段

select flag from A where id = 1;

這個(gè)表的數(shù)據(jù)量和字段數(shù)量、數(shù)據(jù)庫(kù)類型對(duì)結(jié)果有影響嗎?

問題解答

回答1:

盡量減少SELECT COUNT(*) FROM tablename WHERE COL = ’value’ 這種查詢;非要用count的話,盡量count(index),對(duì)索引進(jìn)行count。

Tips:如果你的表中有類似標(biāo)志位(比如是否邏輯刪除)的字段,那么在其上建立一個(gè)索引,會(huì)把count(*)的速度提高數(shù)倍。

回答2:

2 的高

回答3:

id是主鍵的話,這兩個(gè)寫法的效率基本是一樣的,具體要看sql語句的執(zhí)行計(jì)劃。flag字段只有兩個(gè)值,建索引意義不大。從sql語句和業(yè)務(wù)邏輯的對(duì)應(yīng)關(guān)系上,寫法2更好一點(diǎn)。

主站蜘蛛池模板: 福清市| 西华县| 淮阳县| 定南县| 兴化市| 东阳市| 若羌县| 敦化市| 台南市| 衡阳市| 昭苏县| 大名县| 共和县| 长岛县| 于田县| 红河县| 资溪县| 甘南县| 香港 | 徐闻县| 凌云县| 原平市| 遂平县| 襄汾县| 东源县| 巧家县| 逊克县| 宾阳县| 淳化县| 天水市| 岐山县| 中卫市| 哈尔滨市| 额敏县| 宣城市| 淳化县| 建水县| 鹤山市| 吉隆县| 南通市| 乌拉特中旗|