Joins unreliable when join field values approach 15 significant digits.
上次发布: August 25, 2014ArcGIS for Desktop
漏洞 ID 编号
NIM044921
已提交
April 30, 2009
上次修改时间
June 5, 2024
适用范围
ArcGIS for Desktop
找到的版本
9.3
操作系统
Windows OS
操作系统版本
XP
状态
Will Not Be Addressed
开发团队已考虑过该问题或请求,并决定不会解决该问题。 问题的“其他信息”部分可能包含进一步说明。
附加信息
No Public Explanation
解决办法
As a general rule, users should not base joins on doubles in File or Personal geodatabase as they are floating point. What you see in the table is an approximation of what’s on disk in binary. It may work, it may not work. There are various factors that will increase the likely hood of there being no match. Alternative workflows:• Base your join on text or integer fields• SQL Server (SDE) and SQL Server Express (available with Desktop – no SDE required) support fixed point (as opposed to floating point) number fields. That is, you can specify a scale and precision. This will allow joins on doubles to work.• I also got it to work in file or personal using the following workflow. As stated above, joins on doubles may or may not work. So, if you use this workflow, you will have to check the join results to make sure everything matched.• I trimmed the double values to just have three decimal places. Since the numbers are distances, I didn’t think this was a problem.o If I then perform the join with no attribute index present, I get 100% match. So, remove the attribute index from the feature class or table in the feature class properties in ArcCatalog. Also, when prompted to create an index when joining, select NO.o If I then perform the join and select the option to keep only matching records, I also get 100% match, with or without an attribute index present.