度量快速开发平台中,业务表构建的时候,可能会有设置列的名称为数字开头的,正常情况下数据库的列明不能是以数字开头的,比如:
select a.SUOSHUDANWEIID,sum(case when b.JIANCHAXIANGMU = 'GPS未在线' then 1 else 0 end) GPS未在线,
SUM(case when b.JIANCHAXIANGMU = '3G视频不合格' then 1 else 0 end) 3G视频不合格
from PROJECT_CHECK a,PROJECT_CHECK_DETAIL b
where a.ID = b.LIBAOLIJIANID and b.SHIFOUHEGE = 0 group by SUOSHUDANWEIID
一般情况下,我们在查询分析器中,就会在有数字的列明上加上中括号或者 是双引号。
方法一:
select a.SUOSHUDANWEIID,sum(case when b.JIANCHAXIANGMU = 'GPS未在线' then 1 else 0 end) GPS未在线,
SUM(case when b.JIANCHAXIANGMU = '3G视频不合格' then 1 else 0 end) [3G视频不合格]
from PROJECT_CHECK a,PROJECT_CHECK_DETAIL b
where a.ID = b.LIBAOLIJIANID and b.SHIFOUHEGE = 0 group by SUOSHUDANWEIID
方法二:
select a.SUOSHUDANWEIID,sum(case when b.JIANCHAXIANGMU = 'GPS未在线' then 1 else 0 end) GPS未在线,
SUM(case when b.JIANCHAXIANGMU = '3G视频不合格' then 1 else 0 end) as "3G视频不合格"
from PROJECT_CHECK a,PROJECT_CHECK_DETAIL b
where a.ID = b.LIBAOLIJIANID and b.SHIFOUHEGE = 0 group by SUOSHUDANWEIID
在度量快速开发平台中,我们业务表中设置变量用的是[:变量名],因此用方法一中括号的方式,业务表保存的时候就会出现错误。
如果确实要有特殊的数字作为列明,可以在业务表中命名为不是数字的,在窗体界面上再重新为这个列命名,比如网格部件可以设置字段显示名:网格部件1.SetColumnCaption("视频不合格","3G视频不合格") 。
另外就是通过方法二的写法来实现。 用 as "列名称"
原文地址:
转载请注明出处:
撰写人:度量科技