Ich habe 2 Datenbankfelder und es ist notwendig, Ergebnisse basierend auf diesen Werten zu filtern.Entity-Framework, ist es möglich Subtraktion in Where-Klausel
Als Beispiel Kunden Max Speicherplätze und Speicherplätze im Einsatz. Um festzustellen, ob jemand mehr Platz benötigt, möchte ich das so machen.
var temp = db.Storege.Where(o => (o.max_storage_places - o.places_in_use) < 0).ToList()
Aber das funktioniert nicht. Ist das möglich oder sollte ich einen anderen Ansatz verwenden?
EDIT:
-Datenbank MySQL und es ist Trog Entity Framework verwendet. Der Datentyp für beide Felder sind INT-Werte in der Datenbank.
Getestet habe ich diese Version folgende arbeitet die
var temp = db.Storege.Where(o => o.max_storage_places < o.places_in_use).ToList()
URSACHE vorgeschlagen wurde:
Ich war die Untersuchung dieses Problem tiefer und fand heraus, dass dies MySQL bezogenes Problem. Die Felder waren aus irgendeinem Grund "Unsigned INT", so dass die Datenbank die negativen Werte in der Berechnung nicht verstand.
werden In beiden Fällen arbeiten
was ist der Datentyp dieses 'max_storage_palces'? – Sampath
Warum denken Sie, dass das nicht funktioniert? – tym32167
Was passiert, wenn es "nicht funktioniert"? Was sind die Datentypen (DB und .NET)? Warum nicht 'o.max_storage_palces