Simple.Data 检索数据(2)

Simple.Data 利用 .NET 4.0 动态类型技术 dynamic,令此对象支持想要的任何特性,如果使用过的脚本语言这样的写法就并不陌生(javascript、python),可简化类型转换代码,而且允许直接使用索引方式访问属性。

Simple.Data 主要常用类型有

名称 缩写 说明
DynamicStrategy DS 数据库
DynamicTable DT 数据表
SimpleQuery SQ 查询
SimpleExpression SE 条件表达式
SimpleRecord SR 记录
SimpleList SL 记录列表
ObjectReference OR 对象引用,DS.DT、DT.Field 都可转换为此对象

查询、关联、合计、函数 - Query、Join、Aggregate、Function

命令 参数 返回 说明
Select OR[] SQ 指定返回查询字段数据
Star/AllColumns null SQ 用于 Table,返回表所有字段数据
Distinct null SQ 用于 Column,过滤相同数据
As str OR 用于 Table、Column,设置列别名
Where SE SQ 更新标准
Operators 用于 Column,二元操作符+、-、*、/、%、==、!=、<、<=、>、>=
In obj[] OR 用于 Column,in 语法
Between num OR 用于 Column,两个数值之间 1.to(20),也支持日期
Like str OR 用于 Column,模糊条件
is null 用于 Column,查询空值
OrderBy OR SQ 升序
OrderByDescending OR SQ 降序
ThenBy OR SQ 升序,OrderBy 后面使用
ThenByDescending OR SQ 降序,OrderBy 后面使用
Natural Join 外键关联
Join DT SQ Join On
Left Join DT SQ LeftJoin On
With DT SQ eager-loaded,单个或多个记录
WithOne DT SQ eager-loaded,单个记录
WithMany DT SQ eager-loaded,多个记录
Having SE OR 用于 Column,Function 查询标准条件
Min null OR 用于 Column,最小值
Max null OR 用于 Column,最大值
Avg null OR 用于 Column,平均值
Sum null OR 用于 Column,合计
Count null OR 用于 Column,数量
CountDistinct null OR 用于 Column,过滤重复后的数量
Length null OR 用于 Column,字符长度
ToScalar null object 获取第一行第一列
ToScalarList null IList<> 获取所有行第一列
ToScalarArray null object[] 获取所有行第一列
ToScalarOrDefault null object 获取第一行第一列或默认
Implicit Casting 强类型转换,可直接赋值给予定义变量
Cast IEnumerable 强类型转换
ToList IList 获取数据对象列表
ToList IList 获取数据对象列表
ToArray dynamic[] 获取数据对象数组,遍历速度高于列表
ToArray IList 获取数据对象数组
Skip int SQ 忽略记录数量
Take int SQ 提取记录数量
WithTotalCount SQ 记录总数
First SQ 获取第一行数据
FirstOrDefault SQ 获取第一行数据或 null
Single SQ 获取第一行数据
SingleOrDefault SQ 获取第一行数据或 null