繁体   English   中英

实体框架,可以在where子句中使用减法

[英]Entity framework, is it possible to use substract in where clause

我有2个数据库字段,需要根据这些值过滤结果。

例如,客户最大的存储位置和正在使用的存储位置。 为了确定是否有人在使用更多空间,我想这样做。

var temp = db.Storege.Where(o => (o.max_storage_places - o.places_in_use) < 0).ToList()

但这是行不通的。 这有可能还是我应该使用其他方法?

编辑:

数据库是MySQL,通过实体框架使用。 这两个字段的数据类型均为数据库中的INT值。

我测试了以下版本是否正常工作

var temp = db.Storege.Where(o => o.max_storage_places < o.places_in_use).ToList()

根本原因:

我正在对这个问题进行更深入的调查,发现这是与MySQL相关的问题。 字段由于某种原因是“ Unsigned INT”,因此对于数据库而言,它们无法理解计算中的负值。

两种情况都可以

是的,您可以做到。但是您必须使用ToList()从数据库中获取记录。

var temp = db.Storege.Where(o => (o.max_storage_palces - o.places_in_use) < 0).ToList();

要么

var temp = db.Storege.Where(o => (o.max_storage_palces < o.places_in_use ).ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM