LINQ(5)

2019-04-15 20:11

@p5

Name] = @p1) AND ([PostTime] = @p2) AND ([Message] = @p3) AND (NOT ([IsReplied] = 1)) AND ([Reply] IS NULL) 0; Scale = 0) [00000000-0000-0000-0000-000000000000] = 0; Scale = 0) [ghgh]

rec = 0; Scale = 0) [2007-8-16 10:20:09] = 0; Scale = 0) [ghj] c = 0; Scale = 0) [True] = 0; Scale = 0) [qqq]

odel: AttributedMetaModel Build: 3.5.20706.1

k] WHERE ([ID] = @p0) AND ([UserName] = @p1) AND ([PostTime] = @p2) AND ([Message] = @p3) AND (NOT ([IsR 0; Scale = 0) [158ec941-13ff-4093-bd8b-9fceae152171] = 0; Scale = 0) [44]

rec = 0; Scale = 0) [2007-8-16 9:56:19] = 0; Scale = 0) [44] = 0; Scale = 0) [222]

odel: AttributedMetaModel Build: 3.5.20706.1

今天就讲到这里,下次将系统介绍查询句法。

一步一步学Linq to sql(四):查询句法

2007-10-18 09:00 作者: lovecherry 出处: 天极网 责任编辑:>dizzarz select

描述:查询顾客的公司名、地址信息 查询句法:

var 构建匿名类型1 = from c in ctx.Customers

select new {

公司名 = c.CompanyName, 地址 = c.Address };

对应SQL:

SELECT [t0].[CompanyName], [t0].[Address] FROM [dbo].[Customers] AS [t0] 描述:查询职员的姓名和雇用年份 查询句法:

var 构建匿名类型2 = from emp in ctx.Employees select new {

姓名 = emp.LastName + emp.FirstName, 雇用年 = emp.HireDate.Value.Year }; 对应SQL:

SELECT [t0].[LastName] + [t0].[FirstName] AS [value], DATEPART(Year, [t0].[HireDate]) AS [value2] FROM [dbo].[Employees] AS [t0]

描述:查询顾客的ID以及联系信息(职位和联系人) 查询句法:

var 构建匿名类型3 = from c in ctx.Customers

select new {

ID = c.CustomerID, 联系信息 = new

{

职位 = c.ContactTitle, 联系人 = c.ContactName } };

对应SQL:

SELECT [t0].[CustomerID], [t0].[ContactTitle], [t0].[ContactName] FROM [dbo].[Customers] AS [t0] 描述:查询订单号和订单是否超重的信息 查询句法:

var select带条件 = from o in ctx.Orders select new {

订单号 = o.OrderID,

是否超重 = o.Freight > 100 ? \是\否\ };

对应SQL:

SELECT [t0].[OrderID], (CASE

WHEN [t0].[Freight] > @p0 THEN @p1 ELSE @p2

END) AS [value]

FROM [dbo].[Orders] AS [t0]

-- @p0: Input Currency (Size = 0; Prec = 19; Scale = 4) [100] -- @p1: Input String (Size = 1; Prec = 0; Scale = 0) [是] -- @p2: Input String (Size = 1; Prec = 0; Scale = 0) [否]

where

描述:查询顾客的国家、城市和订单数信息(可以使用sql语句来表示),要求国家是法国并且订单数大于5 查询句法:

// var result = (from m in methods // where m.IsStatic != true // select m.Name).Distinct();

var 多条件 = from c in ctx.Customers

where c.Country == \ select new {

国家 = c.Country, 城市 = c.City,

订单数 = c.Orders.Count }; 对应SQL:

SELECT [t0].[Country], [t0].[City], ( SELECT COUNT(*)

FROM [dbo].[Orders] AS [t2]

WHERE [t2].[CustomerID] = [t0].[CustomerID] ) AS [value]

FROM [dbo].[Customers] AS [t0]

WHERE ([t0].[Country] = @p0) AND ((( SELECT COUNT(*)

FROM [dbo].[Orders] AS [t1]

WHERE [t1].[CustomerID] = [t0].[CustomerID] )) > @p1)

-- @p0: Input String (Size = 6; Prec = 0; Scale = 0) [France] -- @p1: Input Int32 (Size = 0; Prec = 0; Scale = 0) [5]

orderby

描述:查询所有没有下属雇员的雇用年和名,按照雇用年倒序,按照名正序 查询句法:

var 排序 = from emp in ctx.Employees where emp.Employees.Count == 0

orderby emp.HireDate.Value.Year descending, emp.FirstName ascending select new {

雇用年 = emp.HireDate.Value.Year, 名 = emp.FirstName };

对应SQL:

SELECT DATEPART(Year, [t0].[HireDate]) AS [value], [t0].[FirstName] FROM [dbo].[Employees] AS [t0] WHERE ((

SELECT COUNT(*)

FROM [dbo].[Employees] AS [t1]

WHERE [t1].[ReportsTo] = [t0].[EmployeeID] )) = @p0

ORDER BY DATEPART(Year, [t0].[HireDate]) DESC, [t0].[FirstName] -- @p0: Input Int32 (Size = 0; Prec = 0; Scale = 0) [0]

分页

描述:按照每页10条记录,查询第二页的顾客 查询句法:

var 分页 = (from c in ctx.Customers select c).Skip(10).Take(10); 对应SQL:


LINQ(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:关于中国航空发动机的最新报道 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: