数据表格
跟DataTable(表格)数据类型相关的一些操作
DataTable类型可以简单理解为Excel表里面的数据内容,如下图
DataTable初始化
初始化一个新的datatable
输入参数:
无
输出参数:
无
DataRow取值
按行取指定单元格的值
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataRow变量 | DataRow | 是 | DataTable行数据变量,如$datarow |
| 键值 | string | 否 (键值和键名必填一项) | 列索引,如:0代表取$datarow[0],取第一列数据 |
| 键名 | string | 否 (键值和键名必填一项) | 列名,如:name代表取$datarow['name'],取列名为name的数据 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | string | 单元格的值 |
DataTable取值
根据行列索引取单元格的值
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 行索引 | int | 是 | 行索引,从0开始 |
| 列索引 | int | 是 | 列索引,从0开始 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | string | 单元格的值 |
DataTable取列数据
根据列名取某一列的数据
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 列名称 | string | 是 | 列名 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | List<string> | 整一列的值 |
DataTable获取行索引
根据列名和该列其中的一个值获取行索引
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 列名称 | string | 是 | 列名 |
| 值 | string | 是 | 该列中的一个值(多个相同的值返回索引小的) |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | int | 行索引(从0开始) |
DataTable获取行数
获取行数,不包含表头
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | int | 行数 |
DataTable获取列数
获取列数
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | int | 列数 |
DataTable删除行
根据行索引删除行
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 行索引 | int | 是 | 行索引,从0开始 |
输出参数:
无
DataTable复制
复制DataTable,包括表结构和数据
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | DataTable | 复制的DataTable |
DataTable克隆
克隆DataTable,只包括表结构
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | DataTable | 克隆的DataTable |
DataTable排序
将DataTable数据按某一列进行排序,默认按ASCII码排序
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 列名 | string | 是 | 列名 |
| 排序方式 | string | 是 | 排序方式,默认按ASCII码进行排序,如果是数字类型,就选数字ASC、数字DESC |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | DataTable | 排序后的DataTable |
字符串写入DataTable
将字符串写入DataTable,该命令会创建一个1列1行的DataTable
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| 表头 | string | 是 | 输出datatable的表头 |
| 内容变量 | string | 是 | 添加的内容 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | DataTable | 创建的DataTable |
多次执行该命令然后保持表头和输出变量相同,会输出一个1列n行的DataTable,如下图:
结果如下:
DataTable查找
根据指定列的数据查找DataTable
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| where条件 | string | 是 | 查找条件,格式为表头='值' |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | DataTable | 查找后的DataTable |
DataTable计算
根据列名对整列数据进行计算,如求和、求最大值等
该命令要求该列数据为数值类型
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 计算表达式 | string | 是 | 计算表达式,如:sum(列标题):求和,max(列标题):求最大值,count(列标题):计数,avg(列标题):取平均值等 |
| 计算表达式 | string | 否 | 行筛选条件,如:a=222筛选a列等于222的行 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | 复合类型 | 根据该列的数据类型而定,可能为int,double类型 |
DataTable列数据转类型
将DataTable列数据转换为指定类型
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 列名 | string | 是 | 要转换的列 |
| 类型 | string | 是 | 转换类型 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | DataTable | 转换后的数据 |
DataTable获取列索引
根据列名获取列索引
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 列名 | string | 是 | 列名 |
| 类型 | string | 是 | 匹配类型 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | int | 列索引(从0开始) |
DataTable转换Sqlite
将DataTable数据转换到Sqlite文件(db文件)
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 数据库文件 | string | 是 | 数据库文件路径(sqlite数据库*.db文件) |
| 表名 | string | 是 | 创建的表名,如果已经创建会直接写入 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | string | 数据库文件路径 |
将DataTable转换到Sqlite数据库后,就可以配合强大的sql语句进行数据查询和处理
DataTable执行命令
在DataTable执行sql命令
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| SQL命令 | string | 是 | sqlite命令,如:select*from DataTable where a =222; |
SQL命令中的表名DataTable为固定格式,不允许修改
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | string | 数据库文件路径 |
DataTable列名转数组
获取所有的列名
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | List<string> | 列名数组 |
DataTable设置单元格值
根据行列设置指定单元格的值
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| 行 | int | 是 | 行索引,从0开始 |
| 列 | int | 是 | 列索引,从0开始 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | bool | 写入是否成功 |
DataRow写入表格
将行数据(DataRow)写入DataTable
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量 | DataTable | 是 | DataTable变量 |
| DataRow变量 | DataRow | 是 | 写入的行数据 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | bool | 写入是否成功 |
DataTable合并
将两个DataTable合并成一个DataTable,两个表的列名和列类型必须一致
输入参数:
| 参数 | 类型 | 是否必须 | 说明 |
|---|---|---|---|
| DataTable变量1 | DataTable | 是 | DataTable变量 |
| DataTable变量2 | DataTable | 是 | DataTable变量 |
输出参数:
| 变量名 | 类型 | 说明 |
|---|---|---|
| 自定义 | DataTable | 合并后的DataTable |