У меня проблема с подсчетом строк. Это моя процедура:Подсчет строк sql server
DECLARE @result table(id int,latitude float, longitude float)
Declare @z int = 1
while (@z <5)
BEGIN
INSERT INTO
@result
SELECT
id,
loc.STPointN(@z).Lat as lat,
loc.STPointN(@z).Long as long
FROM test6
SET @z = @z+1
END
Select * from @result
ORDER BY id
Результаты:
ID lat long
1 16,71175 52,689702
1 17,008381 52,247983
2 17,228107 52,689702
2 17,008381 42,247983
2 16,71175 42,689702
Я хочу подсчитывать строки с одинаковым идентификатором, Somthing как:
ID lat long count
1 16,71175 52,689702 1
1 17,008381 52,247983 2
2 17,228107 52,689702 1
2 17,008381 42,247983 2
2 16,71175 42,689702 3
Любые советы? (Извините за английский)
Вашего начальное чтение является неупорядоченным, так что нет никакой гарантии, что вы получите те же строки каждый раз, или 'loc.STPointN (...)' собирается получить одинаковое значение 'z' каждого время. Непонятно, почему вы читаете строку по времени, а не одеяло 'SELECT' (возможно, с' CROSS APPLY'). Вам также необходимо выяснить критерии для присвоения счета, или числа могут меняться каждый раз. –