關於sqlserver的sql中的中括號不好之處


我公司之前服務器出現一部署就立刻cpu占滿(當時以為機器太爛了),而且非常之響。我聽着實在心煩。

由於服務器程序我可以調試。所以我就先看tomcat服務器的日志。反應着某一時間某一個方法一調用就服務器就立刻響。

然后我先把該方法屏蔽。。。看服務器反應。果然cpu不會立刻到滿了。(可以說能正常工作).

我然后開始調試該方法。

我一開始就認為是sql寫的有問題,本來想重新寫的,后來經理就說在sqlserver能用“存儲過程”來解決sql效率問題

(由於我對sqlserver數據庫,我們經理就叫某人幫我寫),經過一段時間后。那“存儲過程”出來了。但是現象未能達到效果;

然后我就開始重寫那句sql了

具體sql:我就不貼了。

做了例子吧:例如我想查"user"表的name字段中的姓氏:黎和陳 開頭,舊的語句是下面的sql

select * from user where 1=1 and name like '%[黎陳]%';

然后查詢后沒有問題。在自己的服務器也沒有問題。

但是一到服務器就立刻有反應。

后來我改成:

select * from user where 1=1 and name like '黎%' or name like  '陳%';

就沒有什么問題了。所以嘛.....sql中的符號不懂就別亂用哦。。。。

我只知道這個中括號([])的不好之處。。。其他還是得日后才知道

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM