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的更多相关文章

  1. 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 ...

  2. LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg (转)

    Select/Distinct操作符 适用场景:o(∩_∩)o… 查询呗. 说明:和SQL命令中的select作用相似但位置不同,查询表达式中的select及所接子句是放在表达式最后并把子句中的变量也 ...

  3. LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据

    http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...

  4. LINQ to SQL 系列 如何使用LINQ to SQL插入、修改、删除数据 (转)

    http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html LINQ和 LINQ to SQL 都已经不是一个新事物了 ...

  5. Linq to SQL -- Insert、Update、Delete

    Insert/Update/Delete操作 插入(Insert) 1.简单形式 说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提 ...

  6. 20150222—LINQ to SQL 插入、更新和删除

    注意,使用LINQ to SQL时, 表中必须有一个主键才可以起效,否则系统将无法对数据作出修改 插入新数据,根据上一片的文章实例在其中添加新的控件: 编号TextBox(Name):sno 名字Te ...

  7. LINQ to SQL语句(1)Select查询的九种形式

    目录 说明 简单形式 匿名类型形式 条件形式 指定类型形式 筛选形式 Shaped形式 嵌套形式 本地调用方法形式 Distinct形式 说明 与SQL命令中的select作用相似但位置不同,查询表达 ...

  8. Linq to SQL 参考Demo

    LINQ to SQL语句()之Where Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句 ...

  9. Linq to SQL各种参考

    原文:https://www.cnblogs.com/lyj/archive/2008/01/23/1049686.htmlhttps://www.cnblogs.com/lyj/archive/20 ...

随机推荐

  1. pushState()、popstate事件配合ajax实现浏览器前进后退页面局部刷新

    最近研究pushState,看了网上的文章还是不怎么会用,于是自己摸索着理解使用,终于实现局部刷新同时前进后退. 首先说说pushState(),这个函数将当前的url等信息加入history堆栈中: ...

  2. 解决Odoo日期(时间)无效的问题 [转]

    环境Server: Ubuntu Kylin 14 + GreenOdoo-7.0-linux64, GreenOdoo-8.0-linux64客户端: winXP+firefox 31 (类似问题发 ...

  3. thinkphp框架3.2的cookie删除问题记录

    在使用框架删除cookie时,发现cookie(null)不起作用.后来查看官网相关信息,看到了讨论http://www.thinkphp.cn/bug/2602.html

  4. css中的一些兼容问题

    浏览器兼容 为什么会有兼容问题? 由于市场上浏览器种类众多,而不同浏览器其内核亦不尽相同,所以各个浏览器对网页的解析就有一定出入,这也是导致浏览器兼容问题出现的主要原因,我们的网页需要在主流浏览器上正 ...

  5. E-Dijkstal

    1005 输出用%f,1009别做了 Problem E Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Ja ...

  6. MUI - Dialog 提示窗

    Mui基本简介 MUI不依赖任何第三方JS库,压缩后的JS和CSS文件仅有100+K和60+K MUI的开发手册和下载地址 http://dev.dcloud.net.cn/mui/ui/ https ...

  7. Devexpress TreeList控件绑定显示父子节点对像

    今天一位同事咨询Devexpress TreeList控件绑定自动显示父子节点对像,但结果是不会显示带父子节点关系,而是将所有的节点作为父节点显示出来了,对像类的代码如下 public class I ...

  8. JSP Standard Tag Library JSP标准标签库

    了解了基本的标签的底层实现,可以看系统定义的强大的标准标签 1.首先引入两个jar包 2.基本语法 <%@ taglib prefix="c" uri="http: ...

  9. 使用 Sublime Text3 编辑 Markdown

    安装插件 可以通过安装 Markdown 的插件来使 Sublime Text3 变成一款 Markdown 编辑器 1.Markdown Preview 插件 输入Shift + Ctrl + P, ...

  10. java 打开txt文件或者bat文件

    package open_exe; public class OpenExe { public static void openWinExe() { Runtime rn = Runtime.getR ...