欢迎大家来到IT世界,在知识的湖畔探索吧!
多年前,当时刚毕业的我还比较青涩,后端会把N多个要检索的字段传入到存储过程中,我当时通常的写法是拼Sql,大概长这样:
DECLARE @WHERE VARCHAR(MAX) = '1=1'; IF @TITLE <> '' BEGIN SET @WHERE += ' AND Title = @TITLE' END IF @AGE <> '' BEGIN SET @WHERE += ' AND Age = @Age' END EXEC('SELECT * FROM USER WHERE ' + @WHERE);
欢迎大家来到IT世界,在知识的湖畔探索吧!
字段多的时候拼的SQL到后来我自己都缕不明白了。
后来看了领导写的存储过程,大概长这样:
欢迎大家来到IT世界,在知识的湖畔探索吧!SELECT * FROM USER WHERE ((@TITLE <> '' AND Title = @TITLE) OR @TITLE = '') AND ((@Age <> '' AND Age = @Age) OR @Age = '')
执行效率比我写的不知道高了多少,只感叹又学了一招。
后来领导又推荐了一款免费sql工具,SQLynx,也很好用,官网可以直接下
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/133653.html