[SQL] "NOT IN"사용하여 SQL 쿼리 LINQ
SQL"NOT IN"사용하여 SQL 쿼리 LINQ
NOT IN 사용하여 SQL 쿼리하기 위해 할 수있는 LINQ?
예를 들면, 저자의 SELECT au_lname, 주 WHERE NOT IN 상태 ( 'CA', 'IN', 'MD')
해결법
-
==============================
1.
List<string> states = new List<string> { "CA", "IN", "MD" }; var q = from a in authors where !states.Contains(a.state) select new { a.au_lname, a.state };
또는
var q = authors.Where( a => !states.Contains( a.state ) ) .Select( a => new { a.au_lname, a.state } );
-
==============================
2.포함하여 당신은 그것을 할 수 있습니다 :
포함하여 당신은 그것을 할 수 있습니다 :
var states = new[] {"CA", "IN", "MD"}; var query = db.Authors.Where(x => !states.Contains(x.state));
-
==============================
3.여기 예입니다 :
여기 예입니다 :
NorthwindDataContext dc = new NorthwindDataContext(); dc.Log = Console.Out; var query = from c in dc.Customers where !(from o in dc.Orders select o.CustomerID) .Contains(c.CustomerID) select c; foreach (var c in query) Console.WriteLine( c );
-
==============================
4.예!
예!
여기에 우리가 이미 쓴 코드에서 예입니다 :
List<long> badUserIDs = new List { 10039309, 38300590, 500170561 }; BTDataContext dc = new BTDataContext(); var items = from u in dc.Users where !badUserIDs.Contains(u.FbUserID) select u;
생성 된 SQL은 밝혀 :
SELECT {[(T0)]. [아이디], [(T0)]. FbUserID], [(T0)]. FbNetworkID], [(T0)]. [이름] FROM [DBO]. [사용자] AS [T0] WHERE NOT ([(T0)]. FbUserID] IN (@ P0, P1 @ @ P2)) }
from https://stackoverflow.com/questions/344478/linq-to-sql-query-using-not-in by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] (WHERE) 조건으로 선택된 행에서 이전 및 다음 행을 가져옵니다 (0) | 2020.06.06 |
---|---|
[SQL] 어떻게 테이블 데이터를 반환, 자바 / JSP에서 MS SQL Server 저장 프로 시저를 실행합니까? (0) | 2020.06.06 |
[SQL] SQL 쿼리와 기능 결과 데이터에 대한 대상이 없습니다 (0) | 2020.06.06 |
[SQL] `alias` ...`alias`.`column` ... 왜 구문 오류 AS table``에서 삭제? (0) | 2020.06.06 |
[SQL] 값이 이미 피할 중복에 존재하는지 확인하는 방법? (0) | 2020.06.06 |