LINQ to SQL:Where、Select/Distinct
Where 操作
适用场景:实现过滤,查询等功能。
简单说明:与 SQL 命令中的 Where 作用相似,都是起到范围限定也就是过滤作用的 ,而判断条件就是它后面所接的子句。
Where 操作包括 3 种形式:简单形式、关系条件形式、 First()形式。 1.简单形式:
条件一:使用 where 筛选在名称为moxuanshang的客户
var q =
from c in db.MXSMember
where c.TrueName.Equals(“moxuanshang”)
select c; 换种方式 由实体类接收
MXSMember member=db.MXSMember.Where(a=>a.TrueName.Equals(“moxuanshang”) ).FirstOrDefault();
(由于MXSMember是个实体类 so 查询去第一条数据 此时FirstOrDefault()就起到了作用) 条件二:筛选注册时间为2016年11月11日的会员:
var q =
from e in db.MXSMember
where e.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))
select e; 换种方式 由实体类接收
MXSMember member=db.MXSMember.Where(a=>a.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))).FirstOrDefault();
(由于MXSMember是个实体类 so 查询去第一条数据 此时FirstOrDefault()就起到了作用) 2.关系条件形式:
筛选出注册时间为2016年11月11日 和 会员名为moxuanshang的会员
var q =
from p in db.MXSMember
where p.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))&&p.TrueName.Equals("moxuanshang")
select p; 换种方式 由实体类接收
MXSMember member=db.MXSMember.Where(a=>a.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))&&a.TrueName.Equals("moxuanshang")).FirstOrDefault();
(由于MXSMember是个实体类 so 查询去第一条数据 此时FirstOrDefault()就起到了作用) 筛选出 注册时间为2016年11月11日 或 会员名为moxuanshang的会员
var q =
from p in db.MXSMember
where p.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))||p.TrueName.Equals("moxuanshang")
select p; 换种方式 由实体类接收
MXSMember member=db.MXSMember.Where(a=>a.p.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))||a.TrueName.Equals("moxuanshang")).FirstOrDefault();
(由于MXSMember是个实体类 so 查询去第一条数据 此时FirstOrDefault()就起到了作用) 3.FirstOrDefault()、First()形式:
返回集合中的一个元素,其实质就是在 SQL 语句中加 TOP (1)。 第一种写法
MXSMember member=db.MXSMember.Where(a=>a.p.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))||a.TrueName.Equals("moxuanshang")).FirstOrDefault(); 第二种写法
MXSMember member=db.MXSMember.FirstOrDefault(a=>a.p.AddTime>= DateTime.Parse( DateTime.Now.ToString(“yyyy-MM-dd”))||a.TrueName.Equals("moxuanshang"));
Select/Distinct 操作符
O(∩_∩)O~„ 根据条件查询。 1.简单用法: var q =
from c in db.MXSMember
select c.TrueName; var q =
from c in db.MXSMember
select new{c.TrueName} ; 2.匿名类型 形式: var q =
from c in db.MXSMember
select new {c.TrueName, c.Phone}; var q =
from e in db.Employees
select new
{
Name = e.FirstName + " " + e.LastName,
Phone = e.HomePhone
}; var q =
from p in db.Products
select new
{
p.ProductID,
HalfPrice = p.UnitPrice / 2
}; 3.条件形式:
说 明:生成 SQL 语句为:
var q =
from p in db.Products
select new
{
p.ProductName,
Availability =
p.UnitsInStock - p.UnitsOnOrder < 0 ?
"Out Of Stock" : "In Stock"
}; 4.指定类 型形式:
说明:该形式返回你自定义类型的对象集。
var q =
from e in db.Employees
select new Name
{
FirstName = e.FirstName,
LastName = e.LastName
}; 5.筛选形式:
说明:结合 where 使用,起到过滤作 用。
var q =
from c in db.MXSMember
where c.City == "London"
select c.TrueName; var q =
from c in db.MXSMember
select new {
c.CustomerID,
CompanyInfo = new {c.CompanyName, c.City, c.Country},
ContactInfo = new {c.TrueName, c.ContactTitle}
}; var q =
from o in db.Orders
select new {
o.OrderID,
DiscountedProducts =
from od in o.OrderDetails
where od.Discount > 0.0
select od,
FreeShippingDiscount = o.Freight
}; 6.Distinct 形式: var q = (
from c in db.MXSMember
select c.City )
.Distinct();
小编博客园:http://www.cnblogs.com/moxuanshang
小编CSDN:http://blog.csdn.net/u012122318
小编QQ群:238575862
小编微信订阅号请扫二维码识别
请扫二维码哦
LINQ to SQL:Where、Select/Distinct的更多相关文章
- JS中Float类型加减乘除 修复 JQ 操作 radio、checkbox 、select LINQ to SQL:Where、Select/Distinct LINQ to SQL Count/Sum/Min/Max/Avg Join
JS中Float类型加减乘除 修复 MXS&Vincene ─╄OvЁ &0000027─╄OvЁ MXS&Vincene MXS&Vincene ─╄Ov ...
- LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg (转)
Select/Distinct操作符 适用场景:o(∩_∩)o… 查询呗. 说明:和SQL命令中的select作用相似但位置不同,查询表达式中的select及所接子句是放在表达式最后并把子句中的变量也 ...
- LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据
http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...
- LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据 (转)
http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...
- Linq to SQL -- Insert、Update、Delete
Insert/Update/Delete操作 插入(Insert) 1.简单形式 说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提 ...
- 20150222—LINQ to SQL 插入、更新和删除
注意,使用LINQ to SQL时, 表中必须有一个主键才可以起效,否则系统将无法对数据作出修改 插入新数据,根据上一片的文章实例在其中添加新的控件: 编号TextBox(Name):sno 名字Te ...
- LINQ to SQL语句(1)Select查询的九种形式
目录 说明 简单形式 匿名类型形式 条件形式 指定类型形式 筛选形式 Shaped形式 嵌套形式 本地调用方法形式 Distinct形式 说明 与SQL命令中的select作用相似但位置不同,查询表达 ...
- Linq to SQL 参考Demo
LINQ to SQL语句()之Where Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句 ...
- Linq to SQL各种参考
原文:https://www.cnblogs.com/lyj/archive/2008/01/23/1049686.htmlhttps://www.cnblogs.com/lyj/archive/20 ...
随机推荐
- Introduction of SQLite
SQLite is a lightweight, server-less database, it's great for embedding into client application. It ...
- MySQL Command 常见命令
/* Load data from txt file */ LOAD DATA LOCAL INFILE "D:/data.txt" INTO TABLE tname; /* Lo ...
- 论meta name= viewport content= width=device-width initial-scale=1 minimum-scale=1 maximum-scale=1的作用
一.先明白几个概念 phys.width: device-width: 一般我们所指的宽度width即为phys.width,而device-width又称为css-width. 其中我们可以获取ph ...
- webService 部署以后参数输入框不能显示
在<system.web> 标签下面加入这个 <system.web> <webServices> <protocols> <add name=& ...
- ThinkPHP留后门技巧
原文链接:https://www.leavesongs.com/PENETRATION/thinkphp-callback-backdoor.html 90sec上有人问,我说了还有小白不会用.去年我 ...
- 学习Jquery
早就听说了Jquery的大名,一直没有细心的学习一下,通过阅读收集的一些资料,感觉Jquery真的很强大.决定开始自己的学习Jquery之旅.在这里不是为大家讲解Jquery(深知水平有限),只是将自 ...
- NLP文本情感分类传统模型+深度学习(demo)
文本情感分类: 文本情感分类(一):传统模型 摘自:http://spaces.ac.cn/index.php/archives/3360/ 测试句子:工信处女干事每月经过下属科室都要亲口交代24口交 ...
- jQuery判断元素是否存在方法总结
在jquery中判断元素是否存在我们可使用$("#div").length > 0)来判断了,意思就是判断元素长度了,如果没有肯定是不存在的哦,下面我来介绍介绍. 使用传统j ...
- php课程---随机数
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- [转]RamDisk导致远程桌面客户端无法启动问题
在一次重启系统后发现无法运行远程桌面客户端,运行后进行连接即报错. 查看日志有AppCrash错误: 错误应用程序名称: mstsc.exe,版本: 6.1.7600.16385,时间戳: 0x4a5 ...