SQL Server優化

遇到優化問題了就來記錄一下,暫時不會深刻研究數據庫優化數據庫

查看語句執行效率

執行計劃查看

能夠直接使用顯示預估的執行計劃查看,選中語句,直接選擇執行計劃便可優化

語句查看

set statistics profile on 
set statistics io on 
set statistics time on 
go 

--兩個go中間爲你執行的sql語句
select * from Product p where exists (select id from JotrinDB.dbo.MarkingCode where PartNumber=p.ProductName and MarkingCode like '100%')

go 
set statistics profile off 
set statistics io off 
set statistics time off

最好不要使用in,*

這是我寫的SQL,有兩個很差的地方code

select * from Product where productName in (select PartNumber from JotrinDB.dbo.MarkingCode where MarkingCode like '100%')
  1. 在程序中,切記不能使用*
  2. 最好不要使用in,改爲exists,並且最好exists的字段是id這類有索引的

改完以後的sql語句以下,要什麼數據寫什麼,使用exists判斷idblog

select p.Name,p.Data from Product p where exists (select id from JotrinDB.dbo.MarkingCode where PartNumber=p.ProductName and MarkingCode like '100%')
相關文章
相關標籤/搜索