LINQ语法类似于SQL的语法
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的语法的更多相关文章
- Sql常用语法以及名词解释
Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...
- sql 常用语法汇总
Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...
- PL/SQL基础语法入门
先前安装了PL/SQL软件 PL/SQL全称为Procedural Language/SQL. PL/SQL也是一种程序语言,叫做过程化SQL语言,是Oracle数据库对SQL语句的扩展 打PL/SQ ...
- 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 ...
- SQL基础语法(二)
SQL SELECT 语句 本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL ...
- SQL select 语法(转)
SQL 里面最常用的命令是 SELECT 语句,用于检索数据.语法是: SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ] * | expr ...
- SQL基础语法笔记教程整理
PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...
- SQL 2008 RAISERROR语法在SQL 2012/2014不兼容问题
原文 旧的RAISERROR语法在SQL 2012不兼容问题 raiserror 写法: SQL 2008: raiserror 55030 'text error' SQL 2012: raiser ...
- MySQL基本语法(一):和SQL Server语法的差异小归纳
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
随机推荐
- JavaScript基础函数和词法分析以及常用的内置对象和使用方法(4)
day52 参考:https://www.cnblogs.com/liwenzhou/p/8004649.html 函数 函数定义 JavaScript中的函数和Python中的非常类似,只是定义方式 ...
- 本地数据库导入线上服务器的mongodb中
更改默认端口 sudo vi /etc/mongod.conf 进入conf文件,修改port值为19999保存并退出. 重启mongodb sudo service mongod restart 进 ...
- Centos出现-bash: unzip: command not found的解决办法
利用unzip命令解压缩的时候,出现-bash: unzip: command not found的错误. unzip——命令没有找到,其原因肯定是没有安装unzip. 利用一句命令就可以解决了. ...
- fullpage.js与animate.css搭配使用
jquery的fullpage.js插件的使用 https://alvarotrigo.com/fullPage/#3rdPage 官网 https://github.com/alvarotrig ...
- Web端测试和移动端测试
之前参加的项目有涉及Web端测试和移动端测试,简单的记录下他们之间的区别: 1.记录bug 在Web端可以通过系统自带的截图和QQ截图等方式来截取bug的图片,对于错误的地方可以用工具自带的标识来 ...
- Springboot 打jar包分离lib,配置文件正确方式(二)
Springboot 打jar包分离lib,配置文件正确方式(二) 背景 从<Springboot 打jar包分离lib,配置文件正确方式>中,可以达到把配置文件和依赖第三方的jar包分离 ...
- 剑指offer三十四之第一个只出现一次的字符
一.题目 在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置 二.思路 详见代码注释. 三.代码 import java.util. ...
- Backing Up and Restoring HBase Data
There are two strategies for backing up HBase:1> Backing it up with a full cluster shutdown2> ...
- Exception message: /bin/bash: line 0: fg: no job control
这个错误是 我本地idea 远程调试hadoop集群出现的 Diagnostics: Exception from container-launch. Container id: container_ ...
- Mina的服务器
(一) package testMina; import java.io.IOException; import java.net.InetSocketAddress; import java.nio ...