SELECT  
        CASE WHEN  aa.itax is NULL  THEN aa.fskje ELSE
        aa.fskje  / ( 1 + (tjob.itax / 100))  END  nsjsk , 
        (aa.fskje / 1.17)  AS nsjsk1 ,
        sccyd.*
FROM    scCyd
        INNER JOIN aa  ON scCyd.ccydbh = aa.CCYDH
        LEFT JOIN aaON mcyd.CCYDH = aa.ccydh
上面的语句想得到 nsjsk的值,发现总是得到 和fskje 一样的值,
研究一下发现, ( 1 + (tjob.itax / 100)) 默认为整形,把小数给滤掉了, 在100后面加上.00 就可以了
改为SELECT  
        CASE WHEN  aa.itax is NULL  THEN aa.fskje ELSE
        aa.fskje  / ( 1 + (tjob.itax / 100.00))  END  nsjsk , 
        (aa.fskje / 1.17)  AS nsjsk1 ,
        sccyd.*
FROM    scCyd
        INNER JOIN aa  ON scCyd.ccydbh = aa.CCYDH
        LEFT JOIN aaON mcyd.CCYDH = aa.ccydh
 
                    
                     
                    
                 
                    
                 
         
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号