LINQ语法类似于SQL的语法如下,

Models.BookStoreEntities 是从添加新建项中的数据--->ADO.NET实体数据模型--->从数据库生成--->使用5.0框架(这个我用的)--->连接库--->模型命名空间(就是Models.表Entitles)
Entitles规范点就是表名加Entity 比如 StudentEntity

  

 #region LINQ语法可以让我们在项目使用一种类似于SQL的语法

                #region 投影查询,查询全部的书籍
using (Models.BookStoreEntities db = new Models.BookStoreEntities())
{
//基于表达式查询
var Books = from b in db.Books
select b; //输出查询结果数量
Console.WriteLine(Books.Count());
//投影查询除了可以用上述基于表达式的方式实现之外,还可以用一种更简洁的函数方式实现
var Books1 = db.Books;
Console.WriteLine(Books1.Count());
}
#endregion #region 条件查询,比如查询书名为JavaScript语言与AJAX应用的书籍编号
using (Models.BookStoreEntities db = new Models.BookStoreEntities())
{
var BookWhere = from b in db.Books
where b.Title == "JavaScript语言与AJAX应用"
select b;
foreach (var book in BookWhere)
Console.WriteLine(book.BookId); //同样的查询用函数方式实现
var BookWhere2 = db.Books.Where(x => x.Title == "JavaScript语言与AJAX应用");
foreach (var item in BookWhere2)
Console.WriteLine(item.BookId); //在上述查询中,在函数方式实现的代码中用到了Lambda表达式描述查询条件
} #endregion #region 排序和分页查询,比如查询全部订单,并按数量排序并分页
using (Models.BookStoreEntities db = new Models.BookStoreEntities())
{
//按数量排序并分页输出订单编号
var Order1 = (from o in db.Orders
orderby o.Num
select o
).Skip().Take();
//输出查询结果的编号
foreach(var oder in Order1)
Console.WriteLine(oder.BookId); //以函数式方式实现查询
var Order2 = db.Orders.OrderBy(x => x.Num).Skip().Take();
foreach (var oder2 in Order2)
Console.WriteLine(oder2.BookId);
}
#endregion #region 聚合查询,比如查询书籍总数和价格
using (Models.BookStoreEntities db = new Models.BookStoreEntities())
{
//书籍总数
var num = db.Books.Count();
Console.WriteLine(num);
var price = db.Books.Min(x => x.Price);
Console.WriteLine(price);
}
#endregion #region 连接查询,比如查询书的订单编号
using (Models.BookStoreEntities db = new Models.BookStoreEntities())
{
var Order3 = from o in db.Orders
join b in db.Books
on o.BookId equals b.BookId
select o; //join关键字用于连接2个数据表,on和equals关键字用于指定的两个表是通过那个字段连接在一起的
foreach (var order3 in Order3)
Console.WriteLine(order3);
}
#endregion #endregion

LINQ语法类似于SQL的语法的更多相关文章

  1. Sql常用语法以及名词解释

    Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...

  2. sql 常用语法汇总

    Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...

  3. PL/SQL基础语法入门

    先前安装了PL/SQL软件 PL/SQL全称为Procedural Language/SQL. PL/SQL也是一种程序语言,叫做过程化SQL语言,是Oracle数据库对SQL语句的扩展 打PL/SQ ...

  4. ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段

    ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...

  5. SQL基础语法(二)

    SQL SELECT 语句 本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL ...

  6. SQL select 语法(转)

    SQL 里面最常用的命令是 SELECT 语句,用于检索数据.语法是: SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ] * | expr ...

  7. SQL基础语法笔记教程整理

    PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...

  8. SQL 2008 RAISERROR语法在SQL 2012/2014不兼容问题

    原文 旧的RAISERROR语法在SQL 2012不兼容问题 raiserror 写法: SQL 2008: raiserror 55030 'text error' SQL 2012: raiser ...

  9. MySQL基本语法(一):和SQL Server语法的差异小归纳

    html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...

随机推荐

  1. 【xsy1143】 兔子的数字 搜索

    题目大意:请找到第$k$大的数,满足各位数字之和等于各位数字之积.其中$k≤10^{18}$. 首先我们要确定这个第$k$大的数有多大 我们用$f[i][j][he][ji]$表示我们要搜索一个$i$ ...

  2. 【bzoj4259】 残缺的字符串 FFT

    又是一道FFT套路题 思路可以参考bzoj4503,题解 我们对串S和串T中出现的*处全部赋值为0. 反正最终的差异度式子大概就是 $C[i]=\sum_{j=0}^{|T|-1}S[i+j]T[j] ...

  3. NOIP2017滚粗记【上】

    Day0: NOIP前停课训练的最后一天,上午打了一场三题都见过的比赛,一窝人AK. 下午一群人在机房缓慢氧化,到了晚上因为比赛在我们学校打,所以所有的机房都断网了(百思不得其解为什么两个竞赛室也被断 ...

  4. PreparedStatement插入values

    public interface PreparedStatementextends Statement 表示预编译的 SQL 语句的对象. SQL 语句被预编译并存储在 PreparedStateme ...

  5. hbase集群中其中某个regionserver 没有启动

    第一步: date命令查看各个机器的时间 发现linux02机器时间差了2个多小时 第二步:ntpdate pool.ntp.org 修改错误时间的机器 第三步: 重启 hbase

  6. Disconf 学习系列之Disconf 的功能特点

    不多说,直接上干货! 支持配置(配置项+配置文件)的分布式化管理 配置发布统一化 配置发布.更新统一化(云端存储.发布):配置存储在云端系统,用户统一在平台上进行发布.更新配置. 配置更新自动化:用户 ...

  7. Ubuntu各版本的历史发行界面

    不多说,直接上干货! 总的网址是:http://releases.ubuntu.com/releases/  比如,选择的是UbuntuKylin,则点击 http://cdimage.ubuntu. ...

  8. 在windows里安装系统7、8、10或Offcie或Visio等推荐的激活工具

    不多说,直接上干货! (1)激活Windows或者Office前,你务必先进去KMSAuto Net的System界面,安装KMS-host Service; (2)然后回到Main主界面,选择Act ...

  9. Javac语法糖之Enum类

    枚举类在Javac中是被当作类来看待的. An enum type is implicitly final unless it contains at least one enum constant ...

  10. tf.data

    以往的TensorFLow模型数据的导入方法可以分为两个主要方法,一种是使用feed_dict另外一种是使用TensorFlow中的Queues.前者使用起来比较灵活,可以利用Python处理各种输入 ...