Campi di query, operatori e macro
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Questo articolo fornisce descrizioni di ogni tipo di dati di campo, operatore di query e macro di query. Alcuni tipi di dati, operatori e macro sono validi solo per la versione di Azure DevOps indicata.
Per altre informazioni, vedere Informazioni di riferimento rapido sulle query e Gestire e organizzare le query.
Prerequisiti
Nota
Gli utenti con accesso stakeholder per un progetto pubblico hanno accesso completo alle funzionalità di query come gli utenti con accesso Basic. Per ulteriori informazioni, vedere riferimento rapido sull'accesso degli stakeholder.
Tipi di dati e valori dei campi di query
Il valore specificato per un campo deve essere conforme al tipo di dati per tale campo. Nella tabella seguente sono elencati i tipi di dati supportati:
Nota
Per il servizio cloud Azure Boards, il tipo di dati corrisponde a quello elencato per il campo nella pagina type
assegnato a una FIELD
definizione. Per altre informazioni, vedere Campi e attributi di campo dell'elemento di lavoro.
Tipo di dati
Descrizione
Booleano
Specifica un campo che accetta un valore True/False.
DateTime o Date/Time
Campo data in cui è possibile specificare una variabile, ad esempio @Today o @Today-1o un valore, ad esempio 01/01/2025
. Immettere le date nel modello di data impostato per il profilo personale. (Vedi Imposta le preferenze personali per i dettagli. Per esempi di query, vedere Query by date or @CurrentIteration.
Per le query WIQL, è anche possibile specificare la data nel modello UTC (Coordinated Universal Time). Per ulteriori informazioni, vedere Sintassi del linguaggio di interrogazione Work Item (WIQL).
Doppio o Decimale
Numero reale, ad esempio 0,2 o 3,5. Per esempi di query, vedere Eseguire query in base a campi numerici.
GUID
Stringa di caratteri che rappresenta un ID univoco.
Cronologia
Campo formattato personalizzato utilizzato per tenere traccia delle informazioni cronologiche. Questo tipo di dati viene usato solo per supportare il campo Cronologia . Questo campo viene indicizzato automaticamente per la ricerca a testo completo quando è disponibile la ricerca a testo completo. Vedere le ricerche full-text e parziali descritte più avanti in questo articolo. Per esempi di query, vedere Cronologia e controllo.
HTML
Stringhe di testo che supportano descrizioni formattate, ad esempio i campi Descrizione o Passaggi di riproduzione. Questi campi vengono indicizzati automaticamente per la ricerca testuale quando la ricerca testuale è disponibile. Vedere Ricerche full-text e parziali descritte più avanti in questo articolo. Per eseguire query su campi RTF, vedere Eseguire query in base a titoli, ID e campi RTF.
Identità
Stringa di testo breve che identifica un'identità utente.
Integer
Intero a 32 bit con segno, ad esempio 0, 1, 2, 34.
Testo semplice o Campo di testo (multilinea)
Stringhe di testo che supportano descrizioni lunghe, ad esempio il campo Application Start Information .Text strings that support long description, such as the Application Start Information field. Quando è disponibile la ricerca a testo completo, questi campi vengono indicizzati automaticamente per la ricerca a testo completo. Vedi la ricerca di testo integrale e la ricerca per parole parziali descritte più avanti in questo articolo. Per eseguire query su campi di testo normale, vedere Eseguire query in base a titoli, ID e campi di testo formattato.
picklistDouble
Campo personalizzato definito per contenere un elenco di selezione di valori decimali.
picklistInteger
Campo personalizzato definito per contenere un elenco di selezione di valori Integer.
picklistString
Campo personalizzato definito per contenere un elenco di selezione di valori di stringa di testo breve (255 caratteri o meno).
Stringa o Campo di testo (singola riga)
Stringa di testo breve che può contenere fino a 255 caratteri Unicode. I campi di testo stringa vengono spesso usati per supportare elenchi a discesa o menu a tendina.
TreePath
Struttura ad albero ramificato, come un percorso di area o un percorso di iterazione. Scegliere un elemento da un elenco di valori validi. Trovare elementi di lavoro uguali a, non uguali a, sotto o non sotto una struttura ad albero. È anche possibile usare gli In
operatori o Not In
per specificare più valori. Definire la struttura ad albero per un progetto, ovvero percorsi di area e percorsi di iterazione, quindi selezionare quelli da associare a un team.
Per altre informazioni sulla creazione di query, vedere Eseguire query in base all'area o al percorso di iterazione o eseguire query in base alla data o all'iterazione corrente.
Nota
I tipi di dati picklist... vengono assegnati solo ai campi personalizzati definiti per un processo ereditato.
Modello di data e ora
Il modello di data e ora immesso per i campi DateTime deve corrispondere a quello selezionato tramite il profilo. Per visualizzare o modificare la selezione, vedere Impostare le preferenze utente.
Operatori di query
Utilizzare gli operatori di query nella tabella seguente per specificare il modo in cui ogni valore in una clausola deve essere correlato al valore corrispondente in un elemento di lavoro. Per informazioni sul tipo di dati assegnato ai campi dell'elemento di lavoro, vedere Informazioni di riferimento sul campo elemento di lavoro.
Per altre informazioni, vedere Definire una query.
Operatore di interrogazione
Restituisce gli elementi di lavoro se il valore nell'elemento di lavoro corrisponde ai criteri elencati
Tipi di dati applicabili
=
Trova la corrispondenza con il valore nella clausola .
Number, che include Double, GUID, Integer, String, DateTime e TreePath
<>
Non corrisponde al valore nella clausola .
Number, String, DateTime e TreePath
>
È maggiore del valore nella clausola.
Number, String e DateTime
<
È minore del valore specificato nella clausola.
Number, String e DateTime
>=
Maggiore o uguale al valore nella clausola .
Number, String e DateTime
<=
È minore o uguale al valore nella clausola .
Number, String e DateTime
=[Campo]
Corrisponde al valore contenuto nel campo specificato.
Nome di un campo con lo stesso tipo di dati del campo specificato
Controlla se il campo booleano è uguale a un altro campo
<>[Campo]
Non corrisponde al valore contenuto nel campo specificato.
Nome di un campo con lo stesso tipo di dati del campo specificato
Controlla se il campo booleano non è uguale a un altro campo
>[Campo]
Maggiore del valore contenuto nel campo specificato.
Nome di un campo con lo stesso tipo di dati del campo specificato
<[Campo]
È minore del valore contenuto nel campo specificato.
Nome di un campo con lo stesso tipo di dati del campo specificato
>=[Campo]
È maggiore o uguale al valore contenuto nel campo specificato.
Nome di un campo con lo stesso tipo di dati del campo specificato
<=[Campo]
È minore o uguale al valore contenuto nel campo specificato.
Nome di un campo con lo stesso tipo di dati del campo specificato
Contiene
Contiene una corrispondenza esatta o parziale della stringa di testo all'interno del campo selezionato per il filtro.
Stringa
Non contiene
Non contiene una corrispondenza esatta o parziale della stringa di testo all'interno del campo selezionato per il filtro.
Stringa
Contiene parole
Contiene la stringa di testo o le parole esatte all'interno del campo selezionato per il filtro. È anche possibile immettere parole o frasi contenenti parzialmente il carattere jolly, *. La stringa di testo è limitata a 100 caratteri. Per le restrizioni, vedere Ricerca full-text per i requisiti relativi a server e regole di confronto.
Campi di testo lungo indicizzati per la ricerca full-text, che corrispondono a tutti i campi Testo normale e HTML, nonché ai campi Cronologia e Titolo.
Non contiene parole
Non contiene la stringa di testo o le parole esatte all'interno del campo selezionato per il filtro. La stringa di testo è limitata a 100 caratteri.
Usare questo operatore in combinazione con una clausola con l'operatore Contains Words
per includere ed escludere parole chiave specifiche.
Campi di testo indicizzati per la ricerca full-text.
In
Trova la corrispondenza con qualsiasi valore in un set delimitato. Ad esempio, è possibile trovare elementi di lavoro i cui ID sono 100, 101 e 102 se si specificano tali valori per il campo ID. Separare i valori con il separatore di elenco che corrisponde alle impostazioni internazionali definite per il computer client. Ad esempio, è possibile usare una virgola ,
.
Number, String, DateTime, TreePath
È vuoto
Elenca gli elementi di lavoro che contengono un campo HTML vuoto. Non si specifica un valore con questo operatore. Questo operatore è supportato per Azure Boards e Azure DevOps Server.
HTML
Non è vuoto
Elenca gli elementi di lavoro che contengono contenuto nel campo HTML. Non si specifica un valore con questo operatore. Questo operatore è supportato per Azure Boards e Azure DevOps Server.
HTML
Non in
Non corrisponde ad alcun valore in un set delimitato. È possibile escludere gli elementi di lavoro i cui stati non sono risolti, completati o chiusi dai risultati della query se si specificano tali valori per il campo Stato. Separare i valori con il separatore di elenco che corrisponde alle impostazioni internazionali definite per il computer client. Ad esempio, è possibile usare una virgola ,
.
L'operatore Not In è supportato per Azure Boards e Azure DevOps Server.
Number, String, DateTime, TreePath
In gruppo
Corrisponde a un valore membro del gruppo nella clausola . I gruppi corrispondono al nome di un team, di un gruppo di sicurezza o di una categoria di rilevamento del lavoro. Ad esempio, è possibile creare una query per trovare tutti gli elementi di lavoro assegnati ai membri del gruppo Collaboratori o a un team. I gruppi di team vengono creati quando si crea un team. Il nome dei gruppi di team segue il modello [Nome del progetto del team]\Nome del team.
Per le query di esempio, vedere Eseguire query in base all'assegnazione o alle modifiche del flusso di lavoro.
Stringa che corrisponde al nome di un team, di un gruppo di sicurezza o di una categoria definita nel sistema.
Nota
È possibile utilizzare l'operatore In Group solo con campi che utilizzano il tipo di dati String o il campo Tipo elemento di lavoro. È anche possibile usare i gruppi definiti in Microsoft Entra ID quando l'account Azure Boards è supportato da Microsoft Entra ID o Active Directory quando l'istanza del server locale è supportata da Active Directory.
Per informazioni, vedere Usare le categorie per raggruppare i tipi di elementi di lavoro.
Non nel gruppo
Non corrisponde a un valore che è membro del gruppo nella clausola.
Stringa che corrisponde al nome di un gruppo di utenti in Azure DevOps Server o a un gruppo di categorie definito per un progetto.
Nota
È possibile utilizzare l'operatore Not In Group solo con campi che utilizzano il tipo di dati String o il campo Tipo elemento di lavoro. È anche possibile usare i gruppi definiti in Microsoft Entra ID quando l'account Azure Boards è supportato da Microsoft Entra ID o Active Directory quando l'istanza del server locale è supportata da Active Directory.
Non sotto
Non corrisponde al valore specificato nella clausola e non è contenuto nel nodo della clausola.
TreePath
Sotto
Corrisponde al valore nella clausola o è contenuto nel nodo della clausola.
TreePath
È mai stato?
Trova la corrispondenza con il valore nella clausola in qualsiasi punto precedente.
String , DateTime
Nota
Il filtro "Era Mai" sui campi data non è attualmente supportato quando si utilizza l'Editor di query. Sono esclusivamente supportati quando si esegue un WIQL diretto.
Suggerimento
È possibile costruire una query usando la sintassi WIQL che usa un operatore, ad esempio Was Ever, per altri campi del tipo di dati rispetto a quelli elencati. Ad esempio, è possibile usare Was Ever all'interno di una clausola usando il percorso di iterazione. Per un esempio, vedere Eseguire una query in base alla data o all'iterazione corrente, Elencare gli elementi di lavoro spostati da uno sprint.
Interrogare macro o variabili
È possibile usare le macro descritte nella tabella seguente per filtrare le query in base a campi specifici.
Nota
Le macro seguenti sono supportate solo dal portale Web: @CurrentIteration, @CurrentIteration +/- n, @Follows, @MyRecentActivity, @RecentMentions, @RecentProjectActivity e @TeamAreas. Le query che contengono queste macro non funzioneranno quando vengono aperte in Visual Studio/Team Explorer, Microsoft Excel o Microsoft Project.
Macro
Descrizione
[Qualsiasi]
Usare con i campi Tipo di elemento di lavoro o di Stato per eseguire la ricerca in tutti i tipi di elementi di lavoro o in tutti gli stati. Ad esempio, non inserisce Work Item Type=[Any]
filtri in base al tipo di elemento di lavoro.
@CurrentIteration
Usare con il campo Iteration Path per filtrare automaticamente gli elementi di lavoro assegnati allo sprint corrente in base al focus o contesto del team corrente. Per esempi specifici, vedere Eseguire query in base alla data o all'iterazione corrente.
La macro @CurrentIteration funziona solo quando viene eseguita dal portale Web. Non è possibile usare la macro durante la copia o la clonazione di gruppi di test e test case, la definizione di avvisi o le API REST.
@CurrentIteration +/- n
Usare con il campo Percorso Iterazione per filtrare il set di elementi di lavoro assegnati allo sprint corrente +/- n sprint in base al focus del team o al contesto corrente. Per esempi specifici, vedere Eseguire query in base alla data o all'iterazione corrente.
La macro @CurrentIteration +/- n è supportata per Azure Boards e Azure DevOps Server quando viene eseguita dal portale web.
@Follows
Utilizzare con il campo ID e l’operatore In per elencare tutti gli elementi di lavoro che stai seguendo in questo progetto. Per altre informazioni, vedere Seguire un elemento di lavoro o una pull request. È possibile visualizzare questo stesso elenco dalla pagina degli Elementi di lavoro, visualizzazione Pivot della sezione Seguente.
La macro @Follows è supportata solo quando viene eseguita dal portale Web.
@Me
Usare con un campo identità o account utente per cercare automaticamente gli elementi associati alla propria identità o nome utente. Ad esempio, puoi trovare elementi di lavoro che hai aperto con la clausola Created By=@Me
. Per altri esempi, vedere Eseguire query per assegnazione, flusso di lavoro o modifiche della scheda.
@MyRecentActivity
Usare con il campo ID e l'operatore In per elencare gli elementi di lavoro visualizzati o aggiornati nel progetto negli ultimi 30 giorni. È possibile visualizzare lo stesso elenco dalla pagina Elementi di lavoro, vista pivot della mia attività.
@Project
Utilizzare con il campo Team Project per filtrare gli elementi di lavoro in altri progetti. Ad esempio, è possibile trovare tutti gli elementi di lavoro nel progetto attualmente selezionato con la clausola Team Project=@Project
. Per impostazione predefinita, il sistema applica automaticamente il filtro in base al progetto corrente. Per altre informazioni, vedere Definire una query, Query su più progetti.
@RecentMentions
Usare con il campo ID e l'operatore In per elencare gli elementi di lavoro in cui sei menzionato nella sezione discussione. È possibile visualizzare lo stesso elenco nella pagina Elementi di lavoro, nella sezione Menzionato della vista pivot.
@RecentProjectActivity
Usare con il campo ID e l'operatore In per elencare gli elementi di lavoro recentemente aggiornati. Il numero di elementi di lavoro elencati dipende dall'attività di rilevamento del lavoro del progetto. Per i progetti altamente attivi, la macro elenca gli elementi di lavoro aggiornati nel progetto negli ultimi 30 giorni o così via. Per i progetti meno attivi, tuttavia, questo elenco può includere elementi di lavoro precedenti a 30 giorni. È possibile visualizzare elenchi simili dalla pagina Elementi di lavoro, Recentemente creati, Aggiornati di recente e Completati di recente nelle visualizzazioni pivot. Il numero di elementi di lavoro restituiti è limitato a 5000.
@StartOfDay
Utilizzare un campo DateTime
per filtrare gli elementi di lavoro relativi alla data corrente o con un offset positivo/negativo. Ad esempio, è possibile trovare tutti gli elementi chiusi nell'ultima settimana con la clausola Closed Date>=@StartOfDay-7
. Per altri esempi, vedere Eseguire query in base alla data o all'iterazione corrente.
@StartOfMonth
Utilizzare un campo DateTime
con per filtrare gli elementi di lavoro relativi al mese corrente o con uno scostamento positivo/negativo. Ad esempio, è possibile trovare tutti gli elementi creati negli ultimi tre mesi con la clausola Created Date>=@StartOfMonth-3
. Per altri esempi, vedere Eseguire query in base alla data o all'iterazione corrente.
@StartOfWeek
Utilizzare con il campo DateTime
per filtrare gli elementi di lavoro correlati alla settimana corrente o con uno scarto positivo/negativo. Ad esempio, è possibile trovare tutti gli elementi modificati nelle ultime due settimane con la clausola Changed Date>=@StartOfWeek-2
. Per altri esempi, vedere Eseguire query in base alla data o all'iterazione corrente.
@StartOfYear
Utilizzare un campo DateTime
per filtrare gli elementi di lavoro correlati all'anno corrente o con un offset positivo/negativo. Ad esempio, è possibile trovare tutte le funzionalità con una data di destinazione pianificata nell'anno corrente con la clausola Target Date>=@StartOfYear
. Per altri esempi, vedere Eseguire query in base alla data o all'iterazione corrente.
@TeamAreas
Usare solo con il campo Percorso area per filtrare gli elementi di lavoro che hanno un percorso di area assegnato a un team specifico. Richiede l'uso dell'operatore = . Ad esempio, è possibile trovare tutti gli elementi assegnati ai percorsi di area assegnati al team Web con la clausola Area Path=@TeamAreas [Fabrikam Fiber]\Web
. Per altri esempi, vedere Eseguire query in base all'area o al percorso di iterazione.
La macro @TeamAreas è supportata per Azure DevOps Server solo quando viene eseguita dal portale Web.
@Today
Utilizzare con un DateTime
campo per filtrare gli elementi di lavoro correlati alla data corrente o a una data precedente. È anche possibile modificare la macro @Today sottraendo giorni. Ad esempio, è possibile trovare tutti gli elementi creati nell'ultima settimana con la clausola Created Date>=@Today-7
. Per altri esempi, vedere Eseguire query in base alla data o all'iterazione corrente.
Ricerche di testo completo e parziali di parole
Specificare Contains o Does Not Contain per cercare corrispondenze esatte o parziali di una parola o di una frase. Questi operatori filtrano gli elementi in base all'indice di ricerca full-text creato per i campi long-text. Specificare contiene parole o non contiene parole per cercare una frase esatta o per utilizzare il carattere jolly*. Questi operatori usano l'indice di ricerca full-text. È possibile usare il carattere jolly solo alla fine di una parola o di una frase parziale.
Per esempi, vedere Esempi di query sugli elementi di lavoro e Query sugli elementi di lavoro usando il campo Cronologia.
Nota
Non tutte le distribuzioni supportano ricerche a testo intero. Ad esempio, SQL Express e SQL Azure, che supportano il servizio cloud, non supportano la ricerca full-text. In questi casi vengono visualizzati solo gli operatori Contiene e Non Contiene.
Azure DevOps Server indicizza automaticamente tutti i campi di testo lungo con un tipo di dati PlainText e HTML e il campo Title per la ricerca full-text. Gli indici e gli operatori sono disponibili solo quando il SQL Server che supporta Azure DevOps Server supporta la ricerca full-text.
Le ricerche full-text richiedono regole di confronto SQL che corrispondono a una lingua con un word breaker registrato con SQL Server. Se le impostazioni delle regole di confronto per il database di raccolta di progetti usato per l'istanza di Azure DevOps Server non corrispondono a una lingua supportata, i risultati della ricerca potrebbero non corrispondere alle aspettative. In questi casi, è possibile provare a usare gli operatori Contains o Does Not Contain .
Per altre informazioni, vedere Query di ricerca full-text e impostazioni di confronto.
Articoli correlati
- Usare il riferimento rapido alla query
- Informazioni sulle query gestite
- Accedere all'indice del campo dell'elemento di lavoro
- Informazioni sulla sintassi per il linguaggio di query dell'elemento di lavoro (WIQL)
REST API
Per interagire a livello di codice con le query, vedere una delle risorse dell'API REST seguenti: