我在 sql server 中有子表(位置 x,位置 y)和父表(位置 x,位置 y)。我想要的是找到最接近每个孩子的父母。我可以做到“不好的方式”,但可能有一个不使用任何循环的解决方案。
那是我的代码:
SELECT
child.idChild, child.x, child.y,
parent.idParent, parent.x, parent.y,
sqrt(power(child.x - parent.x, 2) + power(child.y - parent.y, 2)) as distance
FROM
child
CROSS JOIN
parent
ORDER BY
idChild, distance
好的,没关系。但是现在我想将父母限制为每个孩子的TOP1。
谢谢