0300valid.mql 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. -- 查询指定 DB 下的 表
  2. -- /DB/table 与 class 命名发生冲突时,class 优先级高于 /DB/table
  3. select * from /msqldb/sqlite_master
  4. /**
  5. output()
  6. **/
  7. ;
  8. select * from /msqldb/T__matrix__test___422YX2FPSXSLVDA9
  9. where day between '2026-01-01' and '2026-10-10'
  10. /**
  11. output()
  12. **/
  13. ;
  14. -- 全表映射,
  15. -- 查询时自动赋值默认类属性:
  16. -- class: 类名/mdb/dba1,
  17. -- id: 组合映射表主键为字符串,
  18. -- name: 与id相同,
  19. -- day: 当前日期,
  20. -- vtime: 当前时间
  21. -- 实际类中没有数据
  22. -- rdb 输出为二维数组,兼容 promdb 等已有 bucket 类型
  23. -- rdb 数据 与 id 一一对应,实际 二维数组中的第一维 有且只有 一个元素
  24. -- 支持 bucket 链式表达式
  25. select id,rdb from /mdb/dba1
  26. /**
  27. output()
  28. **/
  29. ;
  30. -- 条件映射
  31. -- 类中有数据,按指定条件出数
  32. -- xrdb 输出为二维数组,兼容 promdb 等已有 bucket 类型,输出字段顺序与 bucket 定义的字段顺序一致
  33. -- xrdb 数据 与 id 为多对一关系,默认输出第一条记录,需要在 bucket 定义时明确数据唯一排序,否则数据输出可能不稳定
  34. -- 支持 bucket 链式表达式
  35. select * from /mdb/dba2
  36. /**
  37. output()
  38. **/
  39. ;
  40. -- 条件映射
  41. -- 类中有数据,按指定条件出数
  42. -- rdb 输出为二维数组,兼容 promdb 等已有 bucket 类型
  43. -- 支持 bucket 链式表达式
  44. select id,xvarchar,xrdb.find(整数>1).groupby("文本").count() from /mdb/dba2 where xrdb.avg("浮点").groupby("字符串").assert(avg>0)
  45. /**
  46. onerror(continue,'unknown Field Bucket Type')
  47. output()
  48. **/
  49. ;
  50. -- 条件映射
  51. -- 类中有数据,按指定条件出数
  52. -- TODO 重组 rdb 指定字段,输出平表
  53. -- TODO 允许 bucket 与普通类操作方式一致
  54. -- select id, rdb.字符串, rdb.整数.mod(10) from /mdb/dba2 where rdb.整数 > 0
  55. /**
  56. output()
  57. **/
  58. ;