的一部分,独特的价值观我有2个疑问,我想做出共同努力:识别形成SQL和查询
1)一个查询总结的另一个和收益中提取一定距离内的几何点的数量仅在计数大于6分的情况下结果;
2)一个查询返回该距离内的所有点的唯一ID(不计,因此也没有
我想生成从表返回new_ref
单个查询的记录的最小数量) t2
适用于所有(仅限)在第一个查询中求和的记录。 (理想情况下,输出将作为单行中的列,但目前我甚至无法将列中列出的记录反对多行 - 所以这是我的第一个目标,我可以将旋转位留在后面) 。
显然,系统识别记录算来,所以我想应该可以问它记录他们...
添加的总和声明第二查询勾销结果。我是否应该将其作为子查询来构造,如果是这样,我该如何做到这一点?
查询1是:
DECLARE @radius as float = 50
SELECT
t1.new_ref,
t1.hatrisref,
SUM
(CASE WHEN t1.geolocation.STDistance(t2.Geolocation) <= @radius
THEN 1 Else 0
End) Group size'
FROM table1 as t1,
table1 as t2
WHERE
[t1].[new_ref] != [t2].[new_ref]
GROUP BY
[t1].[new_ref],
[t1].[hatrisref]
HAVING
SUM(CASE WHEN
t1.geolocation.STDistance(t2.Geolocation) <= @radius
THEN 1 Else 0
End) >5
ORDER BY
[t1].[new_ref],
[t1].[hatrisref]
查询2是:
DECLARE @radius as float = 50
SELECT
t1.hatrisref,
t1.new_ref,
t2.new_ref
FROM table1 as t1,
table1 as t2
WHERE
[t1].[new_ref] != [t2].[new_ref]
and
t1.geolocation.STDistance(t2.Geolocation) <= @radius
GROUP BY
[t1].[new_ref],
[t1].[hatrisref],
t2.new_ref
ORDER BY
[t1].[hatrisref],
[t1].[new_ref],
t2.new_ref
欢迎使用堆栈溢出。我已经编辑了你的问题的格式。您可以查看https://stackoverflow.com/editing-help以获得更多关于提高问题可读性的建议。玩的开心! – 2014-10-08 15:57:12