cast轉化問題 (select CARCONDITION.CONDITIONDIV from CARCONDITION where (CAST(SUBSTRING(cast(CARCONDITION.RENTSTARTTIME as nvarchar),8,4)as bigint) <1159 or CAST(SUBSTRING(cast(CARCONDITION.RENTSTARTTIME as nvarchar),8,4)as bigint) =1159)
and (CAST(SUBSTRING(cast(CARCONDITION.RENTSTARTTIME as nvarchar),8,4)as bigint)>0 or CAST(SUBSTRING(cast(CARCONDITION.RENTSTARTTIME as nvarchar),8,4)as bigint) =0) )as AM and前面的區別就是後面的比較值(1159 和0 不一樣) 但是下面的(=0就是最後一條)會報錯 求解!
------解决方案--------------------
------解决方案-------------------- 你的这段查询是没什么错误的,可能是你把它作为子查询,而把查询结果作为主查询 select 列表中的一员. 原来用一句查,可能只有一个结果,而加了 or 以后,会出来多个结果,因此出错.