UReport2教學(xué)視頻http://pan.baidu.com/s/1boWTxF5,密碼:98hj
在前一小節(jié)中,我們介紹了表達式,實際上函數(shù)也是表達式的一種。在UReport2當中提供了大量的內(nèi)置函數(shù),通過這些內(nèi)置函數(shù),可以實現(xiàn)各種各樣的報表計算功能。函數(shù)語法格式如下:
函數(shù)名([表達式,表達式...])
下面我們就來逐個介紹UReport2內(nèi)置的函數(shù)。
count函數(shù)是對給定的表達式在計算后對象數(shù)量進行統(tǒng)計。
示例
|
說明
|
---|---|
count(C1,C2) | 統(tǒng)計相對當前所在單元格,目標C1單元格以及C2單元格加在一起的數(shù)量 |
count(C1) | 統(tǒng)計相對當前所在單元格,目標C1單元格數(shù)量 |
count(C1{age>20},C2{salary>2000 and degree=='本科'}) | 統(tǒng)計相對當前所在單元格,目標C1單元格綁定對象的age屬性大于20的C1單元格以及C2單元格綁定對象的salary屬性大于2000同時degree屬性等于本科的單元格數(shù)量 |
count(C1{age>20}) | 統(tǒng)計相對當前所在單元格,目標C1單元格綁定對象的age屬性大于20的C1單元格數(shù)量 |
sum函數(shù)是對給定的表達式在計算后值進行累加,sum函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。
示例
|
說明
|
---|---|
sum(C1) | 相對當前單元格,取到所有C1單元格值進行累加 |
sum(C1{age>20}) | 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值進行累加 |
sum(C1,C2) | 相對當前單元格,取到所有C1和C2單元格的值進行累加 |
sum(C1{age>20},C2{salary>2000 and degree=='本科'}) | 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行累加 |
avg函數(shù)是對給定的表達式在計算后值求平均值,avg函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。
示例
|
說明
|
---|---|
avg(C1) | 相對當前單元格,求C1單元格的平均值 |
avg(C1{age>20}) | 相對當前單元格,取到綁定對象屬性age大于20的C1單元格值的平均值 |
avg(C1,C2) | 相對當前單元格,求C1和C2單元格的平均值 |
avg(C1{age>20},C2{salary>2000 and degree=='本科'}) | 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行求平均值 |
max函數(shù)是對給定的表達式在計算后值求其中的最大值,max函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。
示例
|
說明
|
---|---|
max(C1) | 相對當前單元格,求C1單元格的最大值 |
max(C1{age>20}) | 相對當前單元格,取到綁定對象屬性age大于20的C1單元格值的最大值 |
max(C1,C2) | 相對當前單元格,求C1和C2單元格的最大值 |
max(C1{age>20},C2{salary>2000 and degree=='本科'}) | 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行求最大值 |
min函數(shù)是對給定的表達式在計算后值求其中的最小值,min函數(shù)要求各個表達式計算后的值必須是數(shù)字,否則將產(chǎn)生錯誤。
示例
|
說明
|
---|---|
min(C1) | 相對當前單元格,求C1單元格的最小值 |
min(C1{age>20}) | 相對當前單元格,取到綁定對象屬性age大于20的C1單元格值的最小值 |
min(C1,C2) | 相對當前單元格,求C1和C2單元格的最小值 |
min(C1{age>20},C2{salary>2000 and degree=='本科'}) | 相對當前單元格,取到所有綁定對象屬性age大于20的C1單元格值以及綁定對象屬性salary大于2000且degree屬性等于本科的C2單元格的值進行求最小值 |
取當前單元格所在行的行號,這個函數(shù)比較簡單,它沒有參數(shù)。
示例
|
說明
|
---|---|
row() | 取當前單元格所在行的行號 |
取當前單元格所在列的列號,這個函數(shù)比較簡單,它沒有參數(shù)。
示例
|
說明
|
---|---|
column() | 取當前單元格所在列的列號 |
order函數(shù)需要兩個參數(shù),第一個為要進行排序的對象表達式,第二個是一個布爾值,用來設(shè)置排序方式,true正序,false為倒序。
示例
|
說明
|
---|---|
order(C1,false) | 相對當前單元格,取到所有C1單元格值,對這些值進行倒排序,返回排序好的結(jié)果集合 |
order(C1{age>18},true) | 相對當前單元格,取到與C1單元格綁定的對象屬性age值大于18的所有C1單元格值,對這些值進行正排序,返回排序好的結(jié)果集合 |
取到表達式中定義所有數(shù)據(jù),并以集合形式返回。
示例
|
說明
|
---|---|
list(C1) | 相對當前單元格,取到所有C1單元格值以集合形式返回 |
list(C1,C2{age>20}) | 相對當前單元格,取到所有C1單元格值及C2單元格中age屬性大于20的所有C2單元格值以集合形式返回 |
param函數(shù)用來獲取外部傳入的參數(shù),它需要一個參數(shù),用于指定要獲取的參數(shù)名稱。
示例
|
說明
|
---|---|
param("deptId") | 獲取外部傳入的名為deptId的參數(shù)值 |
param(C1) | 相對于當前單元格,取到C1單元格的值,如果有多個C1單元格則么第一個,然后以這個C1單元格值作為參數(shù)名稱,獲取外部對應(yīng)的參數(shù)值。 |
emptyparam函數(shù)用于判斷指定的外部參數(shù)是否為null或空字符串,如果是返回true,否則返回false,該函數(shù)為2.2.3版本新增,如果要使用該函數(shù),請注意您當前使用的ureport版本。
emptyparam函數(shù)一般用于SQL數(shù)據(jù)集SQL表達式里,比如下面的寫法:
|
上述的SQL判斷采用的是param函數(shù),由于要同時判斷為null以及"",寫起來比較麻煩,如改用emptyparam函數(shù)就簡單多了。
|
對給定的日期參數(shù)進行格式化,它至少需要一個參數(shù),第一個參數(shù)是要格式化的日期類型的對象,第二個參數(shù)是可選的,用于定義格式化采用的模式,如不指定則用默認的:yyyy-MM-dd HH:mm:ss來進行格式化。
示例
|
說明
|
---|---|
formatdate(C1) | 取到C1單元格值,這個值必須是日期類型,然后按yyyy-MM-dd HH:mm:ss來進行格式化成字符串輸出 |
formatdate(C1,"yyyyMMdd") | 取到C1單元格值,這個值必須是日期類型,然后按yyyyMMdd來進行格式化成字符串輸出 |
對給定的參數(shù)進行格式化,它至少需要一個參數(shù),第一個參數(shù)是要格式化的數(shù)字對象,要保證這個參數(shù)值取到后可以轉(zhuǎn)換成日期,否則將發(fā)生錯誤;第二個參數(shù)是可選的,用于定義數(shù)字格式化采用的模式,如不定義,則采用默認的#來進行格式化。
示例
|
說明
|
---|---|
formatnumber(C1) | 取到C1單元格值,這個值必須可以轉(zhuǎn)換成數(shù)字,然后按#來進行格式化成字符串輸出 |
formatnumber(C1,"#,###.00") | 取到C1單元格值,這個值必須可以轉(zhuǎn)換成數(shù)字,然后按#,###.00來進行格式化成字符串輸出 |
get函數(shù)是2.1.2版本中新增的,它的作用是獲取數(shù)據(jù)集中指定位置的對象或?qū)ο蟮哪硞€屬性值。get函數(shù)可以有三個參數(shù),第一個為目標集合對象、第二個為數(shù)據(jù)位置、第三個是對象屬性,其中第一個參數(shù)是必須的,后面兩個參數(shù)為可選。
示例
|
說明
|
---|---|
get(ds1.select(employee_name)) | 從ds1數(shù)據(jù)集中獲取第1個對象值,并將其返回。第二個位置參數(shù)沒有指定默認取集合第一個對象 |
get(ds1.select(employee_name),2) | 從ds1數(shù)據(jù)集中獲取第2個對象值,并將其返回。 |
get(ds1.select(employee_name),2,"deptId") | 從ds1數(shù)據(jù)集中獲取第2個對象值,并從這個對象里取deptId屬性值并返回。 |
get(A3,4) | 獲取所有A3單元格值,從中取第四個值并返回。 |
所謂分頁相關(guān)函數(shù),是指這些函數(shù)是在分頁的時候進行計算,比如計算當前頁有多少條記錄、當前頁某個單元格值累加后是多少、平均值是多少、最大值是多少等等。
分頁相關(guān)函數(shù)使用一般來說,分頁相關(guān)函數(shù)多用在行類型為“重復(fù)表頭”或“重復(fù)表尾”的行中的單元格里。同時,需要注意的是,分頁相關(guān)函數(shù)只會在分頁預(yù)覽時顯示,這點需要注意。
統(tǒng)計當前頁下表達對應(yīng)值的數(shù)目,與count函數(shù)的使用方法基本一致,不同之處在于pcount只會統(tǒng)計當前頁中對應(yīng)的表達式內(nèi)容的數(shù)目。
示例
|
說明
|
---|---|
pcount(C1) | 統(tǒng)計當前頁中,C1單元格數(shù)目 |
pcount(C1,D2{D2>10000}) | 統(tǒng)計當前頁中,C1單元格和當前頁中所有D2單元格值大于10000的D2單元格數(shù)目 |
將當前頁下表達式對應(yīng)的所有值進行累加,與sum函數(shù)對應(yīng),不同的是psum只針對當前頁。
示例
|
說明
|
---|---|
psum(C1) | 將當前頁中,所有C1單元格值進行累加 |
psum(C1,D2{D2<10000}) | 將當前頁中,所有C1單元格值以及值小于10000的D2單元格值累加起來 |
比較當前頁中,表達式對應(yīng)的值,找出其中最大的那個值,與max函數(shù)對應(yīng),只是pmax只針對當前頁。
示例
|
說明
|
---|---|
pmax(C1) | 比較當前頁中所有C1單元格值,找出最大值。 |
pmax(C1,D2,E2{E2>1000}) | 比較當前頁中,所有C1、D2以及值大于1000的E2單元格值,找出其中最大的。 |
比較當前頁中,表達式對應(yīng)的值,找出其中最小的那個值,與min函數(shù)對應(yīng),只是pmin只針對當前頁。
示例
|
說明
|
---|---|
pmin(C1) | 比較當前頁中所有C1單元格值,找出最小值。 |
pmin(C1,D2,E2{E2>1000}) | 比較當前頁中,所有C1、D2以及值大于1000的E2單元格值,找出其中最小的。 |
輸出當前所在頁的頁碼,該函數(shù)沒有參數(shù)。
示例
|
說明
|
---|---|
page() | 輸出當前所在頁的頁碼 |
輸出當前報表一共有多少頁,該函數(shù)沒有參數(shù)。
示例
|
說明
|
---|---|
pages() | 輸出當前報表一共有多少頁 |
pages函數(shù)的使用范圍pages函數(shù)目前僅能在頁眉頁腳中使用
求參數(shù)的絕對值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
abs(-233) | 求-233絕對值,計算后的值是233 |
abs(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值返回其絕對值 |
對參數(shù)值取最小值,如果參數(shù)值為小數(shù)將舍棄小數(shù)點后面的小數(shù)部分,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
ceil(32.32) | 計算后值為32 |
ceil(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值返回其最小值 |
對參數(shù)值取最大值,如果參數(shù)值為小數(shù)將四舍五入小數(shù)點后面的小數(shù)部分,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
floor(32.52) | 計算后值為33 |
floor(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值返回其最大值 |
將一個數(shù)字轉(zhuǎn)化成中文,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
chn(213) | 計算后的值為:貳佰壹拾叁 |
chn(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再轉(zhuǎn)化成中文 |
chn函數(shù)使用注意事項chn函數(shù)轉(zhuǎn)換數(shù)字即可是整數(shù),也可是小數(shù),如果是小數(shù)支持后面最多兩位小數(shù),如果實際小數(shù)過多,chn函數(shù)會先進行四舍五入,然后再進行轉(zhuǎn)換。
將一個數(shù)字轉(zhuǎn)換成中文大寫的人民幣金額,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
rmb(213) | 計算后的值為:貳佰壹拾叁元整 |
rmb(200.12) | 計算后的值為:貳佰元壹角貳分 |
rmb(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再轉(zhuǎn)化成中文大寫的人民幣金額 |
rmb函數(shù)使用注意事項rmb函數(shù)轉(zhuǎn)換數(shù)字即可是整數(shù),也可是小數(shù),如果是小數(shù)支持后面最多兩位小數(shù),如果實際小數(shù)過多,rmb函數(shù)會先進行四舍五入,然后再進行轉(zhuǎn)換。
求參數(shù)的余弦值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
cos (213) | 計算后的值為:0.8090276252864301 |
cos(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其余弦值 |
求參數(shù)的正弦值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
sin(213) | 計算后的值為:-0.58777 |
sin(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其正弦值 |
求參數(shù)的正切值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
tan(213) | 計算后的值為:-0.72651 |
tan(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其正切值 |
求參數(shù)的自然數(shù)底數(shù)e的參數(shù)次方,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
expr(213) | 計算后的值為:3.196867565323994E921 |
expr(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其自然數(shù)底數(shù)e的參數(shù)次方 |
求參數(shù)以10為底的對數(shù)值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
log10(213) | 計算后的值為:2.3283796034387376 |
log10(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其以10為底的對數(shù)值 |
求參數(shù)自然對數(shù)值,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
log(213) | 計算后的值為:5.3612921657094255 |
log(C1) | 相對當前單元格,取到C1單元格的值,如果有多個則取第一個值,再求其自然對數(shù)值 |
求一組數(shù)據(jù)的中位數(shù),參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
median(12,42,31) | 運行結(jié)果為31 |
median(C1) | 相對當前單元格,取到C1單元格的所有值,再取這些值中位數(shù) |
median(C1,C2) | 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值中位數(shù) |
求一組數(shù)據(jù)的眾數(shù),參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
mode(12,42,3,12) | 運行結(jié)果為12 |
mode(C1) | 相對當前單元格,取到C1單元格的所有值,再取這些值眾數(shù) |
mode(C1,C2) | 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值眾數(shù) |
求一組數(shù)據(jù)的方差,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
vara(12,42,3,12) | 運行結(jié)果為209.25 |
vara(C1) | 相對當前單元格,取到C1單元格的所有值,再取這些值方差 |
vara(C1,C2) | 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值方差 |
求一組數(shù)據(jù)的標準差,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
stdevp(12,42,3,12) | 運行結(jié)果為14.75424 |
stdevp(C1) | 相對當前單元格,取到C1單元格的所有值,再取這些值標準差 |
stdevp(C1,C2) | 相對當前單元格,取到C1單元格和C2單元格的所有值,再取這些值標準差 |
pow函數(shù)需要兩個參數(shù),第一個為需要計算的數(shù)字或表達式,第二個為具體的次方。
示例
|
說明
|
---|---|
pow(3,2) | 表示計算3的2次方值,運算后的結(jié)果為9 |
pow(C1,3) | 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,再對其值求3次方 |
生成一個隨機數(shù),可以有一個數(shù)字類型的參數(shù)或表達式,如果有參數(shù),那么以這個參數(shù)作為生成隨機數(shù)字的種子,如果沒有則生成一個0~1之間的隨機數(shù)。
示例
|
說明
|
---|---|
random() | 生成一個0~1之間的隨機數(shù) |
random(10) | 生成一個1~10之間的隨機數(shù) |
random(C1) | 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,再將這個值作為種子生成一個隨機數(shù) |
對一個小數(shù)進行四舍五入,它需要兩個參數(shù),第一個參數(shù)要進行四舍五入的小數(shù)或表達式,第二個為
一個可選的
要保留的小數(shù)位數(shù),如果沒有,則不保留小數(shù)。
示例
|
說明
|
---|---|
round(32.12) | 計算后的值為32 |
round(32.123,2) | 計算后的值為32.12 |
round(C1,2) | 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,然后對這個值做保留兩位小數(shù)的四舍五入操作 |
求一個數(shù)字或表達式計算后值的平方根,參數(shù)值計算后數(shù)據(jù)類型必須是數(shù)字,否則會報錯。
示例
|
說明
|
---|---|
sqrt(2) | 計算后的值為:1.414214 |
sqrt(C1) | 相對當前單元格,取到C1單元格的值,如果取到的C1單元格有多個,則取第一個,然后對這個值進行取平方根計算 |
輸出日期,date函數(shù)可以有一個參數(shù),就是日期格式,如果沒有則采用yyyy-MM-dd HH:mm:ss格式輸出日期。
示例
|
日期
|
---|---|
date() | 以yyyy-MM-dd HH:mm:ss格式輸出當前日期,如:2010-08-15 08:45:10 |
date('yyyy年MM月dd日') | 以yyyy年MM月dd日格式輸出當前日期,如:2010年08月15日 |
輸出當前在月份中的天,該函數(shù)沒有參數(shù)。
示例
|
說明
|
---|---|
day() | 可能輸出15,表示當前為15日 |
輸出當前月份,該函數(shù)沒有參數(shù)。
示例
|
說明
|
---|---|
month | 可能輸出8,表示當前為8月份 |
輸出當前是星期幾,該函數(shù)沒有參數(shù)。
示例
|
說明
|
---|---|
week() | 輸出值可能是“星期三”,表示當前為星期三 |
輸出當前年份,該函數(shù)沒有參數(shù)
示例
|
說明
|
---|---|
year | 輸出結(jié)果為2010,表示當前為2010年 |
用于返回一個字符串,在目標字符串中的位置,該函數(shù)至少需要兩個參數(shù),第一個為目標字符串,第二個為要查找的字符串,如果有三個參數(shù),那么第三個就是開始查找的位置信息,第三個參數(shù)必須是一定大于等于0的數(shù)字。
示例
|
說明
|
---|---|
indexof('中華人民共和國','共和') | 表示要從"中華人民共和國"這個字符串中找到“共和”字符串的位置 |
indexof('中華人民共和國','共和',2) | 表示要從"中華人民共和國"這個字符串中第二個字符開始始,找到“共和”字符串的位置 |
indexof(C1,"人民",2) | 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,再從這個值中第2個位置開始找到“人民”字符串的位置 |
求目標字符串長度,該函數(shù)必須要有一個參數(shù)。
示例
|
說明
|
---|---|
length("中華人民共和國") | 計算結(jié)果為7 |
length(C1) | 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后計算這個值長度 |
將參數(shù)中英文全部轉(zhuǎn)為小寫,該函數(shù)必須要有一個參數(shù)。
示例
|
說明
|
---|---|
lower("Super man") | 計算后的結(jié)果為:super man |
lower(C1) | 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后將這個值中所有英文轉(zhuǎn)換成小寫 |
將參數(shù)中英文全部轉(zhuǎn)為大寫,該函數(shù)必須要有一個參數(shù)。
示例
|
說明
|
---|---|
upper("Super man") | 計算后的結(jié)果為:SUPER MAN |
upper(C1) | 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后將這個值中所有英文轉(zhuǎn)換成大寫 |
這個函數(shù)需要有三個參數(shù),第一個是目標字符串,第二個是要被替換的字符串,第三個是要替換的字符串。
示例
|
說明
|
---|---|
replace("他是一個好人","他","她") | 計算結(jié)果為:她是一個好人 |
replace(C1,"他","她") | 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后再將這個值中所有“他”換成“她” |
該函數(shù)允許有三個參數(shù),第一個是目標字符串,第二個為開始截取的位置,第三個為截取結(jié)束的位置。
示例
|
說明
|
---|---|
substring("他是一個好人",2) | 運行結(jié)果為:一個好人 |
substring("他是一個好人",2,4) | 運行結(jié)果為:一個 |
substring(C1,2,10) | 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后再取這個值中第2到第10個字符之間內(nèi)容 |
去除目標字符串兩邊空格,該函數(shù)要求必須要有一個參數(shù)。
示例
|
說明
|
---|---|
trim(" 一個好人 ") | 運行結(jié)果為: 一個好人 |
trim(C1) | 相對于當前單元格,找到C1單元格,如果C1單元格有多個,則取第一個單元格值,然后再將這個值兩邊可能存在的空格全部去除 |
json函數(shù)是2.1.3版本新增的,該函數(shù)可以解析指定的目標JSON字符串,并取出指定的屬性值。json函數(shù)需要有兩個參數(shù),第一個是目標JSON字符串對象,第二個是要取出的屬性名。
示例
|
說明
|
---|---|
json(emp.select(other),'name') | 取出數(shù)據(jù)集emp中other屬性值對應(yīng)的字符串,將其轉(zhuǎn)換為JSON,再從這個JSON中取name屬性值。 |
json(emp.select(other),'company.name') | 取出數(shù)據(jù)集emp中other屬性值對應(yīng)的字符串,將其轉(zhuǎn)換為JSON,再從這個JSON中取company子對象下的name屬性值。 |
對JSON字符串的要求json函數(shù)在解析JSON字符串時,要求必須是標準的JSON字符串,比如下面這樣的:{"name":"superman","age":32,"company":{"name":"bstek","address":"SHANGHAI CHINA"}}也就是key屬性也需要用“”包裹的,如果是下面這種類型的JSON字符串就解析時就會產(chǎn)生錯誤:{name:"superman",age:32,company:{name:"bstek",address:"SHANGHAI CHINA"}}
更多建議: