在这种情况下,我需要从iFlag
列标记为0的表中获取前15行。
因此,我有以下两项声明:
var t = dbContext.UnProcessedLogs.Take(15).Where(up => up.iFlag == 0).ToList();
var unProcessedlogs = dbContext.UnProcessedLogs.Where(up => up.iFlag == 0).Take(15).ToList();
这两种说法有什么区别?
如果前15行的iFlag
标记为1,第一个行会工作吗?
发布于 2013-10-23 22:43:18
第一项将:
UnProcessedLogs
的前15行iFlag == 0
(明显小于15 )第二项将:
UnProcessedLogs
的所有行过滤到具有iFlag == 0
的行如果表有30行,其中每一行都有iFlag == 0
,而位于中间的行有iFlag == 1
,那么:
iFlag == 0
的行)。iFlag == 0
返回所有15个发布于 2013-10-23 22:43:11
第一个版本:拿我15个项目,过滤他们。
第二个版本:带我所有的项目,过滤他们,只拿15个过滤的项目。
不,不一样。
是的,他们会“工作”,但不会做同样的事情。
如果前15行的iFlag标记为1,第一个行会工作吗?
这只会返回一个空的结果集。
这不是一个错误,它可能不是你想要的!
https://stackoverflow.com/questions/19558766
复制