おそらく明らかなものを投稿して申し訳ありませんが、データベースの経験はあまりありません。
Table.fruit
IDタイプX座標Y座標の味覚フルーティ
1アップル3 3良い1: - 任意の助けをいただければ幸いですが、覚えて、私は私はこのようなテーブルを持っている大規模なデータベーステーブルでの最寄りの検索 - SQLおよび/またはArcGis
:-)初心者です培地悪い、5
2オレンジ5 4 2.9
3アップル7 77 1,4-
4バナナ0,1
6アップル3 38良い9 15中4 69バート9,5
5ナシ - 5,8
7アップル1 4良い3
8バナナ15 99悪い6,8
9梨298 18789ミディアム10,01
... ... ... ... ... ...
1000 Appleの1344 1388悪いバナナ759 1239 5
... ... ... ... ... ...
1958元のテーブルで 私
にNを与えるテーブル(例えば:N = 5)の各点に最も近い点を含む:私は必要1
1959バナナ3 4中5,2
良いです距離 Table.5nearest(距離は偽物であることに注意してください)。結果として得られるテーブルは、ID1、ID2、ID1とID2の間の距離を持ちます(残念ながら、画像はまだ投稿できません)。 1
ID.Fruit1 ID.Fruit2距離 ... ... ... 1000年1958 400 1000 Xxx Xxx ... ...
これは(理想的にはSQL /データベース管理で)、またはArcGisなどでどうすればできますか?何か案は? 残念ながら、私のテーブルには15000のデータセットが含まれているため、n = 5を選択した場合、結果のテーブルには75000のデータセットがあります。 大変感謝しています。
編集:
これまでのご意見やご提案はありがとうございます。 最初に提案された方法は、巨大なファイルサイズをレンダリングするテーブル全体、またはおそらくはクラッシュを修正するためのブルートフォーススキャンのようなものですか? フルーツはちょうどダミーです。実際のテーブルには、修正ID、公称属性(フルーツタイプなど)、XおよびY空間列(Gauss-Krueger内)、およびいくつかの数値属性が含まれています。 これで「バウンディングボックス」をコーディングする方法があると思いますので、距離計算は問題のポイント(1としましょう)と、特定のエッジの長さを持つ正方形内の他のすべてのポイントに対して行われます。私は(遠隔的に)それをコーディングしたり質問したりすることはできますが、私のID列のどこかでスクリプトを実行するにはどうしたらいいですか?私が理解している方法では、これは、レコード/ポイントの周りの四角形内のすべての点を距離フィールドと共に追加した "Table.Fruit"内の各レコード/ポイントの "サブテーブル"を作成するか、 "Table.5nearest")。私はこれが何らかの意味を持つことを願っています。何か案は?THanks again
[SQL Sever Express 2008](http://msdn.microsoft.com/en-us/evalcenter/ff978728.aspx?wt.mc_id=MEC_36_1_5)はオプションですか?もしそうなら、http://blogs.lessthandot.com/index.php/DataMgmt/DataDesign/sql-server-2008-proximity-search-withththまたはhttp://blogs.lessthandot.com/を読むことができます。 index.php/DataMgmt/DBProgramming/sql-server-distance-calculation-option-3 – Fionnuala