最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQLSERVER不拼接SQL如何實現條件查詢

 更新時間:2024年01月05日 14:55:25   作者:y523648  
在做項目中,我們經常遇到復雜的查詢方法,本文主要介紹了SQLSERVER不拼接SQL如何實現條件查詢,具有一定的參考價值,感興趣的可以了解一下

遇到條件查詢,比如用戶可以在界面上選擇想要查詢的條件。

我們常用的方法是拼接SQL,如下:

declare @id int, @SQL NVARCHAR(50) = ''

set @SQL = 'select * from user where 1=1 '

if @id is not null
begin
	set @SQL = @SQL + ' and id = ' + @id
end

但是如果需要查詢的參數很多,這樣的SQL調試起來相當麻煩,我們甚至需要輸出最后拼接的SQL,然后拷貝出來單獨調試。

可以使用另外一種方法:

declare @id int, @name NVARCHAR(50) = ''

select * from user where (ISNULL(@id,'') = '' or id = @id) and (ISNULL(@name,'') = '' or name = @name)

實現原理:

ISNULL(@id,'') = '' OR id=@id

1.假如用戶沒有選擇參數@id,則滿足左邊的條件ISNULL(@id,'') = ''

2. 假如用戶選擇了參數@id,則滿足右邊的條件id=@id,它們之間是or關系,所以滿足任意一個就行,就不需要寫IF去一個一個判斷了

到此這篇關于SQLSERVER不拼接SQL如何實現條件查詢的文章就介紹到這了,更多相關SQL不拼接條件查詢內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

梁平县| 青海省| 麻江县| 南陵县| 邯郸市| 崇阳县| 阳泉市| 丹凤县| 社会| 梅河口市| 滦平县| 阿拉善右旗| 嘉黎县| 隆德县| 馆陶县| 章丘市| 福州市| 临猗县| 格尔木市| 五河县| 格尔木市| 渭南市| 祁东县| 涟水县| 石城县| 广南县| 连江县| 江达县| 萍乡市| 鄂伦春自治旗| 本溪市| 大埔县| 边坝县| 肃北| 宜兴市| 葫芦岛市| 布拖县| 纳雍县| 喀什市| 崇义县| 莫力|