一步一步學Linq to sql(四):查詢句法

作者: lovecherry  來源: 博客園  發布時間: 2008-09-26 22:59  閱讀: 36008 次  推薦: 0   原文鏈接   [收藏]  
 

系列文章導航:

一步一步學Linq to sql(一):預備知識

一步一步學Linq to sql(二):DataContext與實體

一步一步學Linq to sql(三):增刪改

一步一步學Linq to sql(四):查詢句法

一步一步學Linq to sql(五):存儲過程

一步一步學Linq to sql(六):探究特性

一步一步學Linq to sql(七):并發與事務

一步一步學Linq to sql(八):繼承與關系

一步一步學Linq to sql(九):其它補充

一步一步學Linq to sql(十):分層構架的例子

 

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) []

 

0
0
 
標簽:LINQ 查詢 類型
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()