Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
microsoft.public.dotnet.framework
Re: Re: LINQ and "WHERE id IN (...)" clause
Melle
2/3/2011 9:56:00 AM
This reaction is a bit late, but for the sake of others looking for a solution, this will work and resembles the WHERE Id in (..) clause pretty well.
from x in SomeTable
where (new Int32[] {100,101,102}).Contains(x.Id)
select x
Regards,
Melle
> On Saturday, October 13, 2007 4:57 PM Oleg Ogurok wrote:
> Hi there,
>
> Is there an equivalent of "WHERE .. IN (...)" clause in LINQ when
> querying a SQL database?
>
> E.g. I have list of IDs and I need to get the corresponding table
> records.
>
> Thanks,
> -Oleg.
>> On Sunday, October 14, 2007 6:01 AM Frans Bouma [C# MVP] wrote:
>> Oleg Ogurok wrote:
>>
>>
>> List<string> myIDs = new List<string>() { "CHOPS", "BLONP"};
>> NorthwindContext nw = new NorthwindContext();
>> var q = from o in nw.Orders
>> where myIDs.Contains(o.CustomerID)
>> select o;
>>
>> Yes, this is backwards, but it's how the Linq designers thought
>> everyone should use databases these days.
>>
>> I have no idea why there's no such thing like:
>> var q = from o in nw.Orders
>> where o.CustomerID in myIDs
>> select o;
>>
>> I mean, would that have been so incredibly bad? No it would have been
>> better IMHO because it would be more natural for people who know SQL.
>>
>> Now, for the 1000$ question, how to do a query like:
>> SELECT * FROM Orders
>> WHERE CustomerID IN
>> (
>> SELECT CustomerID FROM Customers WHERE Country = @country
>> )
>>
>> if you don't have the list in-memory?
>> I have no idea.
>>
>> Btw, the 'Contains' is an extension method on list and handled by the
>> Linq provider to produce SQL. It thus depends on the Linq provider if
>> this results in an IN() query.
>>
>> Next week: how to do a left join in linq. No, not with 'left join'. :P
>>
>> FB
>>
>> --
>> ------------------------------------------------------------------------
>> Lead developer of LLBLGen Pro, the productive O/R mapper for .NET
>> LLBLGen Pro website:
http://www.l...
>> My .NET blog:
http://weblogs.asp....
>> Microsoft MVP (C#)
>> ------------------------------------------------------------------------
>> Submitted via EggHeadCafe
>> ASP.NET Drawing a chart using OWC11 - Office Web Components
>>
http://www.eggheadcafe.com/tutorials/aspnet/601e9bc2-40ed-405e-b1b0-f416046b6698/aspnet-drawing-a-chart-using-owc11--office-web-compo...
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
Re: Re: LINQ and "WHERE id IN (...)" clause
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password