SQL語句優化問題

時間 2022-12-04 09:30:41

1樓:

in 的優化

select count(registerip) as oldipcount from dbregister a where registerdate between '2014-04-01' and '2014-04-02' and exists

(select null from dbregister b where b.registerdate<'2014-04-01' and a.registerip = b.

registerip)

in 和 distinct都是很影響效率的

2,關於not in的優化

select count(0) as newipcount from dbregister a where registerdate between '2014-04-01' and '2014-04-02' and

not exists (select null from dbregister b where registerdate<'2014-04-01' and a.registerip = b.registerip) group by registerip

2樓:弭春厹

樓主 誰告訴你可以這樣寫啊 兩個語句不等價

第二種寫法 是隱含了asc碼的比較 每個字母都對應乙個asc碼 這個您應該知道吧

希望對你能有所幫助。

幫忙優化一條SQL語句

我暈死,確實夠差的,select裡還那麼幾個select,不給分誰回答!你的sql有問題,你既然已經限制state 0了,為什麼還用外連線排除state in 1,2 的部分,有點多此一舉 試試下面的指令碼會不會好點。select first row from select a.from trd r...

sql語句的問題,SQL語句的問題

額 為什麼不一樣呢?其實是你錯了 他們是一樣的 即recordcount記錄總數是一樣多的 但是 為什麼乙個116225 乙個是1呢?那麼,我建議你這樣做一下就知道怎麼回事了?set rs db.openrecordset sqlstr 這之後執行這麼一句話 rs.movelast 然後看一下 ms...

還是SQL問題,sql語句的問題?

你的寫法是可以的,但是你寫的第乙個條件中。寫錯了,拼寫錯誤。select from song1,song2 where title and song2.singer 何必寫那麼複雜呢。這樣寫很清楚。select from song1 where select title,singer from so...

sql語句查詢問題

select from table where 時間字段 20130926 如果你的日期格式就是八位數字,那上面這麼寫就行,如果還有斜槓什麼的,用下面的 select from table where to char to date 時間字段,yyyy mm dd yyyymmdd 20130926...

SQL查詢語句問題

declare year int set year 0 自己設定if year 0 select year,hh,sl from phka else select year,hh,sl from phk select from select year,hh,sl from phka union se...