从品牌网站建设到网络营销策划,从策略到执行的一站式服务
在SQL SERVER 2005中,将表中字符串转换为数字的函数共2个:
在河曲等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供做网站、成都网站设计 网站设计制作定制网站设计,公司网站建设,企业网站建设,高端网站设计,营销型网站建设,成都外贸网站建设,河曲网站建设费用合理。
1. convert(int,字段名) 例如:select convert(int,'3')
2. cast(字段名 as int) 例如:select cast('3' as int)
其实,一般情况下没有必要把字符串转换为数字类型
假如需要比较两个字段是否相等,但是一个字段为字符串类型,一个为数字类型,用“=”比较两个值是否相等时,SQL SERVER会自动把字符串转换为数字再比较的!
例如:
select da.TITLE_NAME,dsc.NAME
from dbo.DV_DUTY dd
inner join DV_SECOND_CLASS dsc on (dsc.ID=dd.AREA)
left join DV_ASSET da on(da.ID=dd.RECORD_ID and dd.TYPE='2')
where dd.AREA is not null
这个SQl中,inner join DV_SECOND_CLASS dsc on (dsc.ID=dd.AREA) 中dsc.ID为数字类型,dd.AREA为字符类型,相当于这样on(1='1')的判断,这时候就会自动吧字符串的'1'转换为数字类型再比较的。
但是也有弊端,一旦字符类型转换为数字类型出错(说明字符串的确就非数字组成的),SQL就会抛出异常。
SQL SERVER 2005中有判断字段是否为数字的函数:
ISNUMERIC(字段名) -----假如字段是数字类型返回1,不是就返回0
但是好像有的时候不好使,比如:select isnumeric('3,34') 就返回1
说明这个函数对字段值中全是数字但是数字间用“,”和“.”(逗号或点)隔开的都视为数字了!
不知道你什么数据库。
如果是 Oracle
那么
NVL( (你那个子查询) , 0 ) AS 概念策划阶段
如果是 SQL Server
那么
ISNULL( (你那个子查询) , 0 ) AS 概念策划阶段
SQL
server用isnull(字段名,0)
Oracle用nvl(字段名,0)
作用是判断字段名是否为null如果不是null就保留原值,如果是就返回默认值0
这里的0可以修改为任何你想返回的值
你这问题可以直接这样计算
isnull(进货数量,0)-isnull(出货数量,0)
Oracle的话就是
nvl(进货数量,0)-nvl(出货数量,0)
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图