当我在语句中写一个sql案例时,它的功能是if,if,.. if逻辑还是if,else-if,else-if,else逻辑?
即如果条件与案例#1匹配,它还会评估其他案例吗?
答案 0 :(得分:0)
任何自尊的数据库都会短路,但您没有提到您正在使用的数据库。所以,试一试:select case when 1=1 then 1 else 1/0 end
然后看看。
答案 1 :(得分:0)
case
语句按顺序评估when
条件。它在第一个计算结果为true的情况下停止。这是ANSI标准行为,据我所知,所有数据库都以这种方式支持case
语句。