• Entity SQL Language 五GroupBy、位处理函数、字符串处理函数


    GroupBy

    对数据进行分组查询可以使用以下语法:

    string entitySQL = @"SELECT o.OrderDate, Count(o.OrderID) AS Count 
    FROM Orders AS o GROUP BY o.OrderDate
    ";
    var query = db.CreateQuery<DbDataRecord>(entitySQL);

    直接进行Group by操作

    而进行分组时也可以使用Count、Max、Min、Sum、Avg这几个函数

    使用方法与SQL没有什么不同,所以这里仅做介绍

    函数

    函数部分与一般的SQL有些不同这里给出一些例子

    按位的与、或、异或操作:

    db.CreateQuery<Int32>(@"BitwiseAnd(1,0)")//与 全1才1
    db.CreateQuery<Int32>(@"BitwiseOr(1,0)")//或 有1即1
    db.CreateQuery<Int32>(@"BitwiseXor(1,0)")//异或 不同为1

    字符串处理(SampleQueries这部分的不少例子有错误,请大家见机更正,以下示例都为正确示例)

    db.CreateQuery<Int32>("IndexOf('d','zhongdian')")//获取前面字符串在后面字符串中的位置,本例结果为6
    db.CreateQuery<string>("Right('zhongdian',3)")//右取长度3的字符串,ian
    db.CreateQuery<string>("Left('zhongdian',4)")//左取长度4的字符串,zhon
    db.CreateQuery<string>("Length('abc')")//字符串长度,3
    db.CreateQuery<string>("SUBSTRING('zhongdian',2,3)")//子字符串,索引2开始,取长度3,hon
    db.CreateQuery<string>("LTrim(' text ')")//去除左边空格,“text ”
    db.CreateQuery<string>("RTrim(' text ')")//去除右边空格,“ text”
    db.CreateQuery<string>("Trim(' text ')")//去除两边空格,“text”
    db.CreateQuery<string>("Replace('zhongdian','zhong','chong')")//替换,将参数1中的参数2换为参数3,chongdian
    db.CreateQuery<string>("ToLower('Abc')")//转小写,abc
    db.CreateQuery<string>("ToUpper('Abc')")//转大写,ABC
    db.CreateQuery<string>("Reverse('Abc')")//反转,cbA
  • 相关阅读:
    Wireshark协议分析1
    网络的怎么连接的-浏览器
    navicat 快捷键
    jekins—持续集成
    【Back to Basics】查询区间 $a[0, r)$ 上大于等于 $k$ 的数有多少个
    【面试向】从洗牌算法说起
    【经典问题】maximum subset sum of vectors
    Codeforces 1209D Cow and Snacks
    Maximum XOR Sum 系列问题
    【C++ 补习】Copy Control
  • 原文地址:https://www.cnblogs.com/chsword/p/ef_esql5.html
Copyright © 2020-2023  润新知