1. 程式人生 > >Linq 的Join多條件

Linq 的Join多條件

今天遇到了這個問題,在網上查了資料,大部分都推薦了這2種方法

在linq 的join後面加上多個條件。

第一種是直接用重新from 

from u in table1
                       from s in table2
                       where u.id == s.id || u.id == s.sid
                       select new { };

他生成的sql 語句就是

WHERE [Extent1].[ShopId] IN ([Extent2].[ShopId],[Extent2].[HeadShopId]) 這樣的

還有一種用匿名類

var da = from u in table1
                     join s in table2 on new { ss1 = u.id, ss = u.id } equals new { ss1 = s.id, ss =s.sid }
                     select new { };

這樣生成的sql語句就是 And


使用匿名類時注意2個條件的資料型別要一一對應

相關推薦

LinqJoin條件

今天遇到了這個問題,在網上查了資料,大部分都推薦了這2種方法 在linq 的join後面加上多個條件。 第一種是直接用重新from  from u in table1                        from s in table2              

TP5 Join 條件

$list = db('test_paper') ->alias('p') ->Join('test_paper_user u',"u.paper_id=p.id and u

TP5 JOIN 條件(子查詢)

一:例子需求:統計多個使用者下對應的(使用者表),簽到活動次數(活動表)/  報名活動次數(報名表)與其他 //子查詢(用group 把使用者分組,統計簽到表中每個使用者簽到的次數) $activitySign = Db::name('activity_sign')

針對於個inner join或者left join條件查詢的時候,各個inner join 的指向問題

先看一段程式碼吧: <span style="font-size:18px;">SELECT * FROM GOODS1 FR LEFT JOIN GOODS2 MH ON

LINQ 條件join on

span var field def () lin into rabl color var tmp = from a in DT1.AsEnumerable() join b in DT2.AsEnum

linq join on 條件

直接貼程式碼    public IEnumerable<MyJoinModel> GetMyLaunch(int shopId, int memberId, int pageNo, int pageSize)         {             Lis

LINQ條件OR模糊查詢

轉載 這樣的 .com 最終 () msdn soci table copy 需求是這樣的,有一張表tbl(Key[int],Value[string]),數據存儲如下: Key Value 1 -a-b- 2 -a- 3 -c-e- 4 -f-g-

SQL表聯合查詢(LEFT JOIN條件差異

logs 技術分享 .cn where 聯合查詢 uid exist 包含 into 查詢A: select a.*,b.* into Bus605115_ON_Where_And --(642 行受影響) from PositionN a left join szt

jpa/hibernate @onetomany 使用left join 添加條件,可以使用過濾器filters (with-clause not allowed on fetched associations; use filters異常信息)

modified tran SQ fetch join vat reac sset nag package com.ipinyou.mip.dataAsset.campaignManagement.entity; import com.ipinyou.mip.util

left join on +條件與where區別

sql sel null pri opera 不存在 || per int left join on +多條件與where區別 重點 先匹配,再篩選where條件。 本文將通過幾個例子說明兩者的差別。 1. 單個條件 select * from product a l

C# EF+Linq & Lambda條件查詢語句

1.Linq單條件查詢 var xxfDate = from u in dbContext.Customer                          

LINQ 條件查詢 where 條件組建

1.新建一個靜態類 public static class PredicateBuilder { public static Expression<Func<T, bool>> True<T>() { ret

SQL語法——left join on 條件

left join on +多條件與where區別 點選下面的檢視原文 重點 先匹配,再篩選where條件。 本文將通過幾個例子說明兩者的差別。 表1:product id amount 1 100 2 200 3 300 4 400 表2:product_de

linq中怎麼實現條件關聯的左連線???

針對: sql語句: SELECT * FROM T_COURSE a left join T_USER_COURSE_RECORD tucr ON a.COURSE_ID=tucr.COURSE_ID and tucr.[USER_ID][email prote

Linq to sql 實現條件的動態查詢(方法一)

多條件動態查詢在開發中太常見了,使用sql語句拼接很容易實現,但是在使用linq 的時候我卻覺得很麻煩,思來想去,其實不然,linq 實現多條件動態查詢一樣可以變的很簡單。話不多說,直接上例子,供大家參考。       根據5個動態條件查詢: [csharp] v

Linq 條件模糊查詢的方法

首先定義一個LINQ接收的集合:                  var indexlist = from s in vindexinfo select s; 第二步:對需要模糊查詢的欄位做是否為空的判斷        //Contains 意思是是否包含了這個值

Linq to sql 實現條件的動態查詢(方法二)

        之前用到一個關於Linq to sql的多條件動態查詢,那種方法在查詢一個表的時候的確很簡單,但是如果是多個表關聯查詢時使用動態查詢又該怎麼辦呢? 下面介紹的是更為簡單的實現方法,話不多說,程式碼如下: var query = from f in db.TF

linq to sql 條件組合查詢

//一個條件一個條件串接 using System.Linq.Expressions; Expression<Func> exps = A => true; if (GroupId != "0") { Expression<Func>

Linq條件查詢優化---使用擴充套件方法

  寫在演算法前:最近在做SQL多條件查詢,感覺自己寫查詢邏輯太過麻煩。比如,假如有一個查詢條件,就需要分析兩種情況(空條件和一個條件);兩個條件就要四中情況;三個條件,8種情況.......      這樣是不是也太麻煩了?!下面這種方法可以為你簡化很多步驟,一起來看看吧

Linq 條件組合拼接排序

<%@ WebHandler Language="C#" Class="Huifang" %> using System; using System.Web; using Uzai.Shop.Entity.comment; using System.Colle