集深V5 select()函数作用

来源:互联网 发布:淘宝卖家无线装修 编辑:程序博客网 时间:2024/06/06 12:52

一、报表实例

制作“雇员信息表”,了解select()函数的作用。

二、设计过程

1、引用数据集ds2

ds2:select 雇员ID,姓氏+名字 as 姓名,出生日期,地址,职务,邮政编码,雇佣日期,照片 from DEMO_EMPLOYEE

2、编辑报表

(1)B2单元格的表达式:=ds2.Select(姓名)

(2)B3单元格的表达式:=ds2.雇员ID

(3)B4单元格的表达式:=ds2.职务

(4)B5单元格的表达式:=ds2.地址

(5)D2单元格的表达式:=ds2.出生日期,设置显示格式为:yyyy年MM月dd日

(6)D3单元格的表达式:=ds2.雇佣日期,设置显示格式为:yyyy年MM月dd日

(7)B4单元格的表达式:=ds2.邮政编码

(8)将A1~A6单元格的左主格设为B2单元格。

三、小结

自由报表

从上面的表达式可以看出,该报表最关键的是B2单元格,利用select()函数从数据集中取数据,并把结果在报表中进行纵向扩展。其它单元格的左主格都设为B2,因此当B2单元格扩展时,带动着其它所有格子一起复制,由此形成了一条记录就是一页报表的效果。

这个例子用到了select()函数,下面我们做一下介绍。

四、函数说明

select()

函数说明:从数据集的当前行集中选取符合条件的记录

语法:  datasetName.select(<select_exp>{, desc_exp{, filter_exp{, sort_exp{,rootGroupExp}}}} )  

datasetName.select(<select_exp>, , <filter_exp>) //适用于不需排序或数据集中已排好序

参数说明:

select_exp 要选择的字段列名/列号,或表达式。列号用#n表示,例如:#0代表第0列,#1代表第1列,依此类推

desc_exp 指定数据排序的顺序,true表示降序排列,false表示升序排列

filter_exp 数据过滤表达式,如果全部选出,则此参数省略,仅用“,”占位

sort_exp 数据排序表达式,当此项为空时先检查desc_exp是否为空,如果为空,则不排序,否则使用select_exp排序。

rootGroupExp 是否root数据集表达式,为true,从数据集里取数,为false,则从本单元格主格的结果集里取数

返回值:一组数据的集合,数据类型由select_exp的运算结果决定

示例:

例1:ds1.select(name) 从数据集ds1中,选取name字段列的所有值,不排序。

例2:ds1.select(#2, true) 从数据集ds1中,选取第二个字段列的所有值,降序排列。

例3:ds1.select(name,false,sex=='1') 从数据集ds1中,选取sex=='1'的name字段列的值,升序排列。

例4:ds1.select(name,true,sex=='1',id) 从数据集ds1中,选取sex=='1'的name字段列的值,按id字段降序排列。

select()函数注意事项


原创粉丝点击