SELEZIONA la query TOP in ArcGIS Desktop?


12

Esiste un modo per utilizzare un SELECT TOP (n) all'interno del desktop ArcGIS? Sembra che dal momento che il generatore di query ArcGIS sta effettivamente costruendo l'istruzione SQL dopo la clausola WHERE, ciò potrebbe non essere possibile.

Ecco un tipico esempio SQL di utilizzo:

SELEZIONA TOP 3 * DA Layer


2
Si noti che TOP e LIMIT non sono supportati nei database di
blah238

Risposte:


10

Se il database sottostante supporta query secondarie, è possibile creare una query con un TOP N che restituisca ObjectIds (o qualsiasi altro campo) e utilizzarlo nella query di definizione.

OBJECTID IN (*query here*)

Ad esempio, ecco una query di SQL Server per una TOP 20, selezione casuale: inserisci qui la descrizione dell'immagine

La query sopra restituirà 20 righe diverse ogni volta che la mappa o la tabella degli attributi viene aggiornata. Questo potrebbe tornare utile per una battuta pratica di ArcMap per utenti meno esperti (April Fools è a meno di un mese di distanza).

Naturalmente, la query secondaria non deve essere una query TOP N né è necessario utilizzare un ID univoco. Forse elaborare una query per trovare duplicati:

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


simpatico! Vedo che questo dà un sacco di problemi ad alcuni utenti .. "cosa hai fatto al database ???"
George Silva,

1
Mentre speravo davvero di poterlo fare con gli shapefile, sembra che non ci riesca. Tuttavia, questo sembra essere un ottimo modo per risolvere il problema quando si chiamano i dati da un'origine dati SQL che supporta le query SELECT TOP. Grazie.
RyanKDalton,

1
È possibile utilizzare tali query all'interno della query di definizione, ma esiste qualche soluzione alternativa per utilizzarle nello strumento Seleziona per attributo? Ha già questa parte SELEZIONATA DA precompilata.
Alex Tereshenkov,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.