Ich mag würde eine Datenbank-Tabelle abzufragen, die unten wie das vereinfachten Beispiel aussieht:Linq Abfrage Zeilen auszuwählen, wo eine Spalte ein Maximalwert ist
Quote | Sequence | Item
-------|-----------|-----
1 | 1.0M | a
1 | 2.0M | a
1 | 3.0M | a
1 | 1.0M | b
1 | 2.0M | b
1 | 3.0M | b
2 | 1.0M | x
2 | 2.0M | x
3 | 1.0M | y
und ich brauche eine Abfrage, die alle Zeilen für eine bekommt gegeben Quote
wo die Sequence
der Maximalwert für diese Spalte ist:
Quote | Sequence | Item
-------|-----------|-----
1 | 3.0M | a
1 | 3.0M | b
2 | 2.0M | x
3 | 1.0M | y
ich verwende F#
und System.Data.Linq
.
kann ich
let quoteQuery =
query{
for row in db.[TABLE] do
select row
}
verwenden, um alle Zeilen zu bekommen, aber ich weiß nicht, Linq
gut genug - noch - dies zu modifizieren, um die Abfrage zu haben, um die gewünschten Ergebnisse produzieren. Ich habe versucht, the answer from this question in einem Versuch zu verwenden, um meine Abfrage zu ändern, aber ich habe eine Wand in versucht, zu ändern (raten?) Die Syntax/Sprache notwendig.
Es gibt einige SQL-Beispiele, die ich finden kann, aber nur wenige, die Linq-spezifisch sind.
Laut [der Dokumentation] (https://docs.microsoft.com/de-de/dotnet/articles/fsharp/sprachreferenz/query-expressions) sollten Sie in der Lage sein, 'maxBy' zu verwenden ... –
BTW, F # Abfrageausdrücke sind nicht * LINQ *; Sie sind * F # Abfrageausdrücke *. –