テーブル内の 1 つの行の経度と経度の間の距離を、テーブル内の他のすべての行と一緒に計算する必要があります。
テーブルのサンプルを以下に示します。
temp_index, serial no, **id, date, longitude, latitude,** group ID
'8', '2129163', '2', '733441.5634375', '116.45479', '39.88098', '1'
'23', '2129164', '2', '733441.5646759259', '116.45468', '39.87086', '1'
'52', '2129165', '2', '733441.5669328704', '116.4581', '39.88069', '1'
'70', '2129166', '2', '733441.5681712963', '116.4581', '39.88069', '1'
'32', '2130837', '3', '733441.5652777777', '116.45595', '39.91784', '2'
'80', '2130838', '3', '733441.56875', '116.44619', '39.90707', '2'
制約は、同じ ID を持つ行間の距離を計算しないことです。
これを実行するために使用できるクエリはありますか? MATLAB 経由でクエリを実行する必要があります。
結果は次のようになります。id1 と id2 は、同じテーブルで距離が計算された ID です。
tmp_index sn1 sn2 id1 id2 距離 grp_id1 grp_id2
'1'、'2169736'、'2133142'、'31'、'10'、'0.4932'、'22'、'5'
'6'、'2169736'、'2187925'、'31'、'41'、'0.12976'、'22'、'31'