下麵以存儲過程查詢所有為例,非存儲過程(或不是查詢所有將*替換為你想要查詢的列即可)更為簡單, 語法:select * from 表名 where 列名 like'%條件%' 拼接後的set @變數名 = 'select * from 表名 where ' + @條件 + ' like ' + '' ...
下麵以存儲過程查詢所有為例,非存儲過程(或不是查詢所有將*替換為你想要查詢的列即可)更為簡單,
語法:select * from 表名 where 列名 like'%條件%'
拼接後的set @變數名 = 'select * from 表名 where ' + @條件 + ' like ' + '''' + '%' + @傳入的值 + '%'+'''' --①
例如:set @str = 'select * from Manger where ' + @tiaojian + ' like ' + '''' + '%' + @value + '%'+'''' 中 '''' 第一個'和最後一個'代表的意思與like外的單引號'相同,而相當於C#中的字元串拼接的標識---"。中間的''才代表單引號,因為SQL語句不支持雙引號",寫''兩個的原因就是識別出'是要用往like後面、%前面的單引號',①最後的''''與上面同理。
這樣就理解了為什麼是''''(4個單引號)