sql查詢是否存在優化,不要再用count 了

2022-10-10 23:51:21 字數 1284 閱讀 3437

常用查詢語句:

select

count(*) from

table

where a=

1

優化後語句:

select

1from

table

where a=

1 limit 1

實驗

表結構

create

table

`t_s` (

`id`

int(11) not

null

auto_increment,

`cname`

varchar(25) default

null

, `sname`

varchar(25) default'',

primary

key(`id`)

) engine

=myisam auto_increment=

8000001

default charset=latin1;

執行儲存過程

begin

declare v int

default5;

while v <

8000000

do

insert

into

t_s(cname,sname)

values ('

testingpartitions

',adddate('

1995-01-01

',(rand(v)*

36520)mod 3652

));

set v = v +1;

endwhile

;end

資料量(8000000)

常用查詢1

select

count(*) from t_s where cname=

'testingpartitions

'受影響的行:

類似查詢2

select

count(*) from t_s where cname=

'testingpartitions

' limit 1

受影響的行:

優化查詢:

select

1from t_s where cname=

'testingpartitions

' limit 1

受影響的行:

SQL查詢資料庫是否存在

在實際工作中會遇到通過sql查詢資料庫是否存在的情況,下面一些語句可以提供一些幫助,本文的語句是在sql08r2中測試的 1,查詢當前資料庫伺服器所有資料庫 select from master.dbo.sysdatabases 2,查詢資料庫是否存在 select count from maste...

SQL判斷是否存在

判斷資料庫是否存在 if exists select from master.sysdatabases where name n 庫名 print exists else print not exists 判斷要建立的表名是否存在 if exists select from dbo.sysobjec...

SQL判斷是否存在

1 判斷資料庫是否存在 2 ifexists select frommaster.sysdatabaseswherename n 庫名 3print exists 4 else 5print notexists 67 8 判斷要建立的表名是否存在 9 ifexists select fromdbo....