標籤:
度量快速開發平台中,業務表構建的時候,可能會有設定列的名稱為數字開頭的,正常情況下資料庫的列明不能是以數字開頭的,比如:
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 "列名稱"
原文地址:http://plat.delit.cn/thread-619-1-1.html
轉載請註明出處:
撰寫人:度量科技www.delit.cn
業務表構建中一些特殊字元作為列名的構建樣本