ВИБІРТЕ ТОП-запит у ArcGIS Desktop?


12

Чи існує спосіб використання SELECT TOP (n) на робочому столі ArcGIS? Здається, що оскільки конструктор запитів ArcGIS ефективно будує оператор SQL після пункту WHERE, це може бути неможливим.

Ось типовий приклад використання SQL :

ВИБІРТЕ ТОП 3 * ВІД шару


2
Зауважте, що TOP і LIMIT не підтримуються у файлах баз даних
blah238

Відповіді:


10

Якщо основна база даних підтримує підзапити, ви можете створити запит за допомогою TOP N, який повертає ObjectIds (або будь-яке інше поле) і використовувати його у вашому запиті визначення.

OBJECTID IN (*query here*)

Наприклад, ось запит SQL Server для ТОП 20, випадковий вибір: введіть тут опис зображення

Наведений вище запит повертає 20 різних рядків щоразу, коли карта чи таблиця атрибутів оновлюються. Це також може стати в нагоді практичним анекдотом ArcMap для менш досвідчених користувачів (у April Fools менше місяця).

Звичайно, підзапит не повинен бути TOP N запитом, а також не потрібно використовувати унікальний ідентифікатор. Можливо, обробіть запит, щоб знайти дублікати:

FIRE_ID IN (SELECT FIRE_ID
FROM [SandboxGeodb].[dbo].[TESTFEATURECLASS] GROUP BY FIRE_ID HAVING COUNT(FIRE_ID) > 1)


приємно! Я бачу, що це створює певні проблеми деяким користувачам .. "що ви зробили з базою даних ???"
Джордж Сільва

1
Хоча я дуже сподівався, що можу це зробити за допомогою файлів, але, здається, я не можу. Однак це, здається, є дуже хорошим способом вирішення проблеми під час виклику даних із джерела даних SQL, який підтримує SELECT TOP запитів. Дякую.
RyanKDalton

1
Ви можете використовувати такі запити в запиті Definition, але чи є можливе їх використання в інструменті Select by Attribute? Цю частину SELECT FROM вона вже попередньо заповнена.
Олексій Терешенков
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.