| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- -- 查询指定 DB 下的 表
- -- /DB/table 与 class 命名发生冲突时,class 优先级高于 /DB/table
- select * from /msqldb/sqlite_master
- /**
- output()
- **/
- ;
- select * from /msqldb/T__matrix__test___422YX2FPSXSLVDA9
- where day between '2026-01-01' and '2026-10-10'
- /**
- output()
- **/
- ;
- -- 全量映射(也可以指定固定条件映射部分数据),
- -- 实际类中没有数据
- -- 查询时自动赋值默认类属性:
- -- class: 类名/mdb/dba1,
- -- id: 组合映射表主键为字符串,
- -- name: 与id相同,
- -- day: 当前日期,
- -- vtime: 当前时间
- -- rdb 输出为二维数组,兼容 promdb 等已有 bucket 类型,输出字段顺序与 bucket 定义的字段顺序或相应表字段定义顺序一致
- -- rdb 数据 与 id 一一对应,实际 二维数组中的第一维 有且只有 一个元素
- -- 支持 bucket 链式表达式
- select id,rdb from /mdb/dba1
- /**
- output()
- **/
- ;
- -- 条件映射
- -- 类中需要有数据,按指定条件映射数据,条件与类数据有关联
- -- xrdb 输出为二维数组,兼容 promdb 等已有 bucket 类型,输出字段顺序与 bucket 定义的字段顺序一致
- -- xrdb 数据 与 id 为多对一关系,默认输出第一条记录,需要在 bucket 定义时明确数据唯一排序,否则数据输出可能不稳定
- -- 支持 bucket 链式表达式
- select * from /mdb/dba2
- /**
- output()
- **/
- ;
- -- 条件映射
- -- 类中需要有数据,按指定条件映射数据,条件与类数据有关联
- -- xrdb 输出为二维数组,兼容 promdb 等已有 bucket 类型,输出字段顺序与 bucket 定义的字段顺序一致
- -- xrdb 数据 与 id 为多对一关系
- -- 支持 bucket 链式表达式
- select id,xvarchar,xrdb.find(整数>1) from /mdb/dba2
- /**
- output()
- **/
- ;
- -- 条件映射
- -- 类中需要有数据,按指定条件映射数据,条件与类数据有关联
- -- xrdb 输出为二维数组,兼容 promdb 等已有 bucket 类型,输出字段顺序与 bucket 定义的字段顺序一致
- -- xrdb 数据 与 id 为多对一关系
- -- 支持 bucket 链式表达式
- select id,xvarchar,xrdb.find(整数>1).groupby("文本").count() from /mdb/dba2
- /**
- output()
- **/
- ;
- -- 条件映射
- -- 类中需要有数据,按指定条件映射数据,条件与类数据有关联
- -- xrdb 输出为二维数组,兼容 promdb 等已有 bucket 类型,输出字段顺序与 bucket 定义的字段顺序一致
- -- xrdb 数据 与 id 为多对一关系
- -- 支持 bucket 链式表达式
- -- 支持 assert(AEXP)
- -- select id,xvarchar,xrdb.find(整数>1).groupby("文本").count() from /mdb/dba2 where xrdb.avg("浮点").groupby("字符串").assert(avg>0)
- /**
- output()
- **/
- ;
- -- 条件映射
- -- 类中需要有数据,按指定条件映射数据,条件与类数据有关联
- -- TODO 重组 xrdb 指定字段,输出平表
- -- TODO 允许 bucket 与普通类操作方式一致
- -- TODO assert(AEXP) 可转换为 id in bucketfield.exps(...).find(AEXP).ids(),
- -- TODO 相同的链式表达式 bucketfield.exps(...) 可以复用中间结果
- -- select id, xrdb.字符串, xrdb.整数.mod(10) from /mdb/dba2 where xrdb.整数 > 0
- /**
- output()
- **/
- ;
|