我有一个用EntityFramework加载的数据库。
在此数据库中,有一个包含几列的表。其中2列称为ZipcodeFrom和ZipcodeTill。表中的Zipcodes来自不同的国家,因此没有真正的标准格式。
我现在遇到的问题如下。
我收到一个Zipcode,我需要找到包含与收到的Zipcode相关联的Zipcode范围的行。
我不能使用SQL来使用BETWEEN函数。所以我正在为C#$src = glob("*",GLOB_ONLYDIR);
$nomatch = preg_grep("/.*\.files$|^wp\-includes$/i",$src,PREG_GREP_INVERT);
foreach($nomatch as $folder)
{
echo "print ".$folder;
}
答案 0 :(得分:1)
假设您按字母顺序执行此操作,这有效地模仿了SQL BETWEEN
操作:
var zipCode = "SOMECODE";
var result = from row in db.Table
where row.ZipcodeFrom <= zipCode
&& row.ZipcodeTo >= zipCode;
如果您的提供商不支持使用<
,<=
,>
和>=
运营商,您应该可以使用string.Compare
代替:< / p>
var result = from row in db.Table
where string.Compare(row.ZipcodeFrom, zipCode) <= 0
&& string.Compare(row.ZipcodeTo, zipCode) >= 0;