Czy istnieje sposób na wybranie odrębnych wartości z kolumny w ArcMap? Mam dane zarówno w formacie GDB, jak i SHP. Szukałem sposobów wyboru za pomocą SQL, QueryLayers, ModelBuilder i indywidualnych skrzynek narzędziowych i pojawia się, ponieważ wszystkie opcje wyboru zawsze WYBIERZ * Z nazwy tabeli GDZIE ...
W SQL napisałbym SELECT DISTINCT columnName FROM tableName.
arcgis-desktop
arcmap
select
Steve
źródło
źródło
Użyj rozumienia listy w języku Python.
W przypadku dużych zestawów danych metodą efektywną pod względem pamięci byłoby użycie wyrażenia generatora .
źródło
fields
myList = set([row.getValue(fldName) for row in arcpy.SearchCursor(fcName, fields=fldName)])
Jeśli Twoje dane są w formacie PGDB, możesz wykonać następujące czynności w oknach dialogowych konstruktora zapytań (zapytanie definicji, wybierz według atrybutów, wyrażeń w przyborniku itp.) Za pomocą podzapytania:
WYBIERZ * Z nazwy tabeli GDZIE ...
Zwróci to rekordy, dla których wartości w wartości column_to_test_for_unique_values są unikalne.
źródło
Jeśli masz tylko licencję Basic (wcześniej zwaną ArcView), możesz otworzyć widok Tabeli, kliknąć kolumnę prawym przyciskiem myszy i wybrać Podsumuj.
źródło
Jeśli twoje dane są w SDE (przestrzennym silniku bazy danych), możesz użyć obiektu ArcSDESQLExecute Pythona i Arcpy. Za pomocą tej „metody” można przekazać złożony kod SQL.
źródło
Lub użyj skryptu Python, aby wyeksportować do pliku CSV, a następnie użyj interfejsu API Python innej bazy danych (powiedzmy SpatiaLite), aby odczytać plik csv i wykonać odpowiednie zapytanie SQL z tego samego skryptu. W przypadku dużego stołu może to być być nieco szybsze niż tworzenie własnej listy - dunno.
Jakkolwiek to zrobisz, jest to wciąż irytująca „funkcja” ArcGIS.
źródło
A co z używaniem
distinct
w podzapytaniu (poniżej jest klasa funkcji FGDB):Z pomocy (10.0) zauważ, że ma to ograniczenia:
źródło
Jak sugeruje Justin. Zwykle robię podsumowanie w polu, które chcę, a następnie wybieram odrębne w dbf, uruchamiam małe obliczenia, aby kategoryzować każdą odrębną wartość, a następnie łączę ją z powrotem z oryginałem.
To długa droga i musisz fenagel z ulubionymi metodami kakulacji. ale ...
Cokolwiek załatwi sprawę.
źródło