要求
[SQL] SELECT count(std_no) FROM SREG400
WHERE STD_NO = :ARG_STD_NO
AND MOD_CD IN ('U0117010', 'U0117020') AND TRET_ST = 'U0121010'
代码if(modCd=="U0117010" || modCd="U0117020" && modResnCd="U0121010"){不知道这么写对不对,modCd如果值是'U0117010', 'U0117020'其中一个,并且modResnCd是U0121010这个值的时候就要进入这个if语句中,,不知道我这么写的逻辑代码对不对
[SQL] SELECT count(std_no) FROM SREG400
WHERE STD_NO = :ARG_STD_NO
AND MOD_CD IN ('U0117010', 'U0117020') AND TRET_ST = 'U0121010'
代码if(modCd=="U0117010" || modCd="U0117020" && modResnCd="U0121010"){不知道这么写对不对,modCd如果值是'U0117010', 'U0117020'其中一个,并且modResnCd是U0121010这个值的时候就要进入这个if语句中,,不知道我这么写的逻辑代码对不对
if((STD_NO=ARG_STD_NO)
&&(modCd=="U0117010" || modCd="U0117020" )
&&(TRET_ST = 'U0121010')){}
直接翻译得出的结果!
if(modCd=="U0117010" || modCd="U0117020" && modResnCd="U0121010"){
和
if((modCd=="U0117010" || modCd="U0117020") && modResnCd="U0121010"){
这个,只是多加了一个括号有区别吗还有就是
位置变一下,让&&这个在前面||这个在后面,
在
if(modCd=="U0117010" || modCd="U0117020" && modResnCd="U0121010"){
里面如果
modCd=="U0117010" 判断为true
那末后面的都不会被执行
直接进入if块里
if(modCd1=="U0117010" || modCd2="U0117020" && modResnCd="U0121010"){
modCd1或者modCd2其中一个为true,并且modResnCd也为ture才进入if模块是不是我这么写错了
所以if(modCd=="U0117010" || modCd="U0117020" && modResnCd="U0121010")
相当于是if(modCd=="U0117010" || (modCd="U0117020" && modResnCd="U0121010"))
按照你要的结果这样写是错误的
应该的if((modCd=="U0117010" || modCd="U0117020") && modResnCd="U0121010")
if(modCd1=="U0117010" || modCd2="U0117020" && modResnCd="U0121010"){
modCd1或者modCd2其中一个为true,并且modResnCd也为ture才进入if模块是不是我这么写错了 对,你这么写错了,正确方法是
if((modCd1=="U0117010" || modCd2="U0117020") && modResnCd="U0121010"){ 或条件要用括号括起来代表一个条件,否则或条件是顺序判断,第一个为真就不继续向后判断了
那就是
if ((modCd1=="U0117010" || modCd2="U0117020") && modResnCd="U0121010"){
所以if(modCd=="U0117010" || modCd="U0117020" && modResnCd="U0121010")
相当于是if(modCd=="U0117010" || (modCd="U0117020" && modResnCd="U0121010"))
按照你要的结果这样写是错误的
应该的if((modCd=="U0117010" || modCd="U0117020") && modResnCd="U0121010")
if (("U0117010".equals(modCd) || "U0117020".equals(modCd)) && "U0121010".equals(modResnCd)){