我现在有一张表AIR_TICKET其中有个字段TOUR_CODE是nvarchar 类型,我现在想把当其中的存放的是数值时就和这个表中的TICKET_PRICE做乘法计算,否则就为0,我现在写了个sql 觉得没有问题,但是一执行就报“从数据类型 nvarchar 转换为 numeric 时出错。”这是为什么啊,请指教还有为什么非得加上group by air_ticket.TOUR_CODE不加就报
“选择列表中的列 'air_ticket.TOUR_CODE' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。”
下面是我写的sql 语句
select case when isnumeric(AIR_TICKET.TOUR_CODE)=1
then sum(AIR_TICKET.TICKET_PRICE*(convert(numeric,AIR_TICKET.TOUR_CODE))) else 0 end as Z_VALUE_REWARD
from air_ticket group by air_ticket.TOUR_CODE
慕哥9229398
倚天杖
相关分类