我有一个包含坐标(x,y)的数据库,并希望找到最接近某个点的坐标。(可能有多个与该点最接近的坐标)
我已经写了这2个LINQ,但肯定有比两次遍历数据库更聪明的方法:
var closestDistance = _context.Coordinates.Min(x =>
Math.Sqrt(Math.Pow((point.coordX - x.CoordX), 2) +
Math.Pow((point.coordY- x.CoordY), 2)));
var closest = _context.Coordinates.Where(x=> closestDistance ==
Math.Sqrt(Math.Pow((point.coordX - x.CoordX), 2) +
Math.Pow((point.coordY - x.CoordY), 2)));
怎样优化这个问题?