SQL存储过程中,if判断语句中有多个判断条件时,要用括号括.吗?

if(@rq2 is null or @rq2!=@a11)if @rq2 is null or @rq2!=@a11 都行吗?
2024-12-28 19:16:16
推荐回答(4个)
回答1:

如果像你这个只是单纯的or的话,这两种写法应该都可以。
可是如果是有and又有or,那么就需要你先把这个条件的先后分清楚了,这样的情况,肯定需要括号括清楚每一层。

回答2:

查询语句的效果
with t_tmp as ( select 'abcdefg(123456)xyz' as f1)
select f1,substring(f1,1,charindex('(',f1)-1) +
substring(f1,len(f1)-charindex(')',reverse(f1))+2,100) as f2 from t_tmp
对应的update为下,顺便加了过滤条件避免不是此类数据也被处理了
update 表名 set 字段名 =
substring(字段名,1,charindex('(',字段名)-1) +
substring(字段名,len(字段名)-charindex(')',reverse(字段名))+2,len(字段名))
where charindex(')',字段名)>charindex('(',字段名) and charindex('(',字段名)>0

回答3:

最好是加上

回答4:

要用括号的