前言
之前有園友一直關(guān)注著我快點(diǎn)出SQL Server性能優(yōu)化系列,博主我也對性能優(yōu)化系列也有點(diǎn)小期待,本來打算利用周末寫死鎖以及避免死鎖系列的接著進(jìn)入SQL Server優(yōu)化系列,但是在工作中長時間都是利用EF來操作SQL,不免對寫SQL語句有些生疏,在某些場景下還是只能利用底層的SQL語句或者寫存儲過程來實(shí)現(xiàn),很久沒寫存儲過程都忘記怎么寫了,所以本節(jié)穿插動態(tài)SQL查詢的文章,別著急,博主說過不會爛尾,博主再忙也會抽空將整個SQL Server系列梳理完畢,那樣的話,無論對初級還是中級者都可以從中受益匪淺,至少我是這么認(rèn)為,呵呵。
動態(tài)SQL語句查詢
前前篇我們簡短敘述了利用EXEC和EXECUTE來進(jìn)行動態(tài)SQL語句查詢,并未深入去講解,借博主工作中重新回到寫原生SQL語句的機(jī)會,我們再來回顧下動態(tài)SQL語句查詢。既然是動態(tài)SQL查詢,說明在某些場景下利用硬編碼SQL語句查詢的方式是不可行的,比如查詢條件的不固定,這是最常見的情景,那么動態(tài)SQL語句查詢有哪幾種方式呢?萬變不離其宗,只有以下三種方式,請往下看。
參數(shù)化SQL語句動態(tài)查詢
參數(shù)化SQL查詢是動態(tài)SQL查詢中最簡單的一種,因?yàn)槲覀冎恍枰獋鬟f參數(shù)即可,查詢條件是固定的,我們一起來溫故而知新。
USE AdventureWorks2012 DECLARE @AccountNumber AS VARCHAR(200) SET @AccountNumber = 'AW00000002'SELECT StoreID, CustomerID, ModifiedDate,