Condividi tramite


Eseguire query su campi, operatori, valori e variabili

È possibile trovare e creare elenchi di elementi di lavoro creando query di elemento di lavoro. Definendo una o più clausole, si filtrano tutti gli elementi di lavoro all'interno di un progetto team o di una raccolta di progetti team per restituire il set di elementi di lavoro che interessano. Per ciascuna clausola, specificare un campo, un operatore e un valore o una variabile. È possibile ad esempio cercare tutti gli elementi di lavoro in un particolare progetto team specificando il campo Progetto team, l'operatore di uguaglianza (=) e il nome del progetto team come valore. In alternativa al valore, è possibile specificare una variabile, quale @Project, che rappresenta il progetto team corrente.

Esempio di clausola di query

E/O

Campo

Operatore

Valore

And

Progetto team

=

@Progetto

Per altre informazioni generali sulle query, vedere Eseguire query di elementi di lavoro. Per informazioni sullo spostamento all'interno dell'editor di query o della visualizzazione query usando scelte rapide da tastiera, vedere Scelte rapide da tastiera per l'utilizzo di Team Web Access e Team Explorer.

Contenuto dell'argomento

  • E/O

  • Eseguire query su campi e valori

  • Operatori di query

  • Variabili di query

  • Ricerche di parole parziali e full-text

  • Query dei campi indicizzati

Elenco di controllo per la definizione di una clausola di query:

  1. Nella prima riga vuota, sotto l'intestazione di colonna Campo fare clic sulla freccia Giù per visualizzare l'elenco di campi disponibili e scegliere un elemento nell'elenco.

    Per altre informazioni, vedere Eseguire query su campi e valori.

  2. Nella stessa riga, sotto l'intestazione di colonna Operatore fare clic sulla freccia Giù per visualizzare l'elenco di operatori disponibili e selezionare un elemento nell'elenco.

    Per altre informazioni, vedere Operatori.

  3. Nella stessa riga, sotto l'intestazione della colonna Valore digitare un valore o fare clic sulla freccia Giù e selezionare un elemento nell'elenco.

  4. Per altre informazioni su come usare le variabili per specificare il progetto team, l'utente o la data correnti, vedere Variabili.

  5. Per aggiungere una clausola, scegliere Fare clic per aggiungere una nuova clausola o Aggiungi nuova clausola.

    È possibile aggiungere una clausola alla fine della query, inserirla dopo una clausola esistente (Inserire una clausola di query) e rimuovere (Eliminare una clausola di query), raggruppare (Raggruppare le clausole di query) e dividere (Separare le clausole di una query) le clausole a seconda delle esigenze.

E/O

Specificare AND oppure OR per creare espressioni logiche delle clausole query. Specificare AND per trovare elementi di lavoro che soddisfano i criteri sia della clausola corrente che di quella precedente. Specificare OR per trovare elementi di lavoro che soddisfano i criteri o della clausola corrente o di quella precedente.

È possibile aggiungere una nuova clausola per ogni campo elemento di lavoro allo scopo di raffinare i criteri di ricerca, affinché venga restituito solo il set di elementi di lavoro desiderato. Se la query non restituisce i risultati previsti, è possibile aggiungere, rimuovere, raggruppare o separare clausole di query per limitare i risultati della query.

Le clausole di query possono essere raggruppate in una singola unità separata dal resto della query, analogamente a quanto avviene con l'inserimento di parentesi per separare un'espressione in un'equazione matematica o in un'istruzione logica. Quando si raggruppano clausole, l'operatore AND o OR per la prima clausola del gruppo viene applicato all'intero gruppo.

Come illustrato nell'esempio seguente, le clausole raggruppate vengono convertite nell'espressione logica corrispondente. La prima espressione restituisce gli elementi di lavoro con priorità 1 nonché tutti i bug attivi di qualsiasi priorità. La seconda espressione restituisce tutti gli elementi di lavoro attivi con priorità 1 e tutti i bug con priorità 1, a prescindere che siano attivi o meno.

Clausole raggruppate

Espressione logica

Operatore OR con clausola AND raggruppata

Priority=1 OR (Work Item Type=Bug AND State=Active)

Operatore AND con clausola OR raggruppata

Priority=1 AND (Work Item Type=Bug OR State=Active)

Per altre informazioni, vedere Specificare i criteri di filtro query [reindirizzato].

Eseguire query su campi e valori

Il valore specificato per un campo deve essere conforme al tipo di dati per quel campo. Nella tabella seguente sono elencati i tipi di dati supportati.

Tipo di dati

Dati archiviati

DateTime

Ora UTC (Coordinated Universal Time). È possibile specificare una variabile, quale @Today o @Today-1, o un valore, quale ad esempio 1/1/2012.

Double

Un numero reale, quale 0,2 o 3,5.

GUID

Una stringa di caratteri che rappresenta un ID univoco.

History

Campo formattato personalizzato usato per tenere traccia delle informazioni cronologiche. Questo tipo di dati viene usato solo per supportare il campo Cronologia. Questo campo viene automaticamente indicizzato per la ricerca full-text quando è disponibile. Vedere Ricerche di parole parziali e full-text più avanti in questo argomento.

HTML

Le stringhe di testo che supportano descrizioni formattate, quali i campi Descrizione o Passaggi ripetizione bug. Questi campi vengono automaticamente indicizzati per la ricerca full-text quando è disponibile. Vedere Ricerche di parole parziali e full-text più avanti in questo argomento.

Nota

Quando si aggiorna Team Foundation Server, il campo Descrizione viene modificato da un tipo di campo PlainText a HTML.Se si usa il comando witadmin changefield è possibile ripristinare il tipo di dati per questo campo in base alle necessità.Vedere Gestire campi di elementi di lavoro [witadmin].

Integer

Un intero a 32 bit con segno, quali 0, 1, 2, 34.

PlainText

Stringhe di testo che supportano descrizioni lunghe, ad esempio il campo Informazioni avvio applicazione. Questi campi vengono automaticamente indicizzati per la ricerca full-text quando è disponibile. Vedere Ricerche di parole parziali e full-text più avanti in questo argomento.

String

Breve stringa di testo che può contenere fino a 255 caratteri Unicode.

TreePath

Una struttura ad albero con rami, quale un percorso di area o un percorso di iterazione. È necessario scegliere un elemento in un elenco di valori validi. È possibile trovare elementi di lavoro che sono allo stesso livello della struttura ad albero o che sono in livelli sottostanti. Per altre informazioni, vedere Aggiungere e modificare percorsi di area e di iterazione.

Torna all'inizio

Operatori di query

È possibile usare gli operatori di query indicati nella tabella seguente per specificare la relazione tra ciascun valore in una clausola e il valore corrispondente in un elemento di lavoro. Per informazioni sul tipo di dati assegnato ai campi elemento di lavoro, vedere Riferimenti ai campi elemento di lavoro per Visual Studio ALM.

Operatore di query

Restituisce degli elementi di lavoro se il valore nell'elemento di lavoro corrisponde ai criteri elencati.

Tipi di dati applicabili

=

Corrisponde al valore nella clausola.

Numero, che include Double, GUID, Integer, String, DateTime e TreePath

<>

Non corrisponde al valore nella clausola.

Numero, String, DateTime e TreePath

>

È maggiore del valore nella clausola.

Numero, String e DateTime

<

È minore del valore nella clausola.

Numero, String e DateTime

>=

È maggiore o uguale al valore nella clausola.

Numero, String e DateTime

<=

È minore o uguale al valore nella clausola.

Numero, String e DateTime

=[Campo]

Corrisponde al valore che è contenuto nel campo specificato.

Nome di un campo che è dello stesso tipo di dati del campo specificato.

<>[Campo]

Non corrisponde al valore che è contenuto nel campo specificato.

Nome di un campo che è dello stesso tipo di dati del campo specificato.

>[Campo]

È maggiore del valore che è contenuto nel campo specificato.

Nome di un campo che è dello stesso tipo di dati del campo specificato.

<[Campo]

È minore del valore che è contenuto nel campo specificato.

Nome di un campo che è dello stesso tipo di dati del campo specificato.

>=[Campo]

È maggiore o uguale al valore che è contenuto nel campo specificato.

Nome di un campo che è dello stesso tipo di dati del campo specificato.

<=[Campo]

È minore o uguale al valore che è contenuto nel campo specificato.

Nome di un campo che è dello 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 filtraggio.

String

Non contiene

Non contiene una corrispondenza esatta o parziale della stringa di testo all'interno del campo selezionato per il filtro.

String

Contiene parole

Contiene la stringa di testo esatta o parole all'interno del campo selezionato per il filtro. È inoltre possibile immettere parole o frasi parziali che contengono il carattere jolly *. Per le restrizioni, vedere Ricerche full-text per i requisiti relativi al server e alle regole di confronto.

Campi di testo lunghi che sono indicizzati per la ricerca full-text, che corrispondono a tutti i campi PlainText e HTML e a Titolo.

Non contiene parole

Non contiene la stringa di testo esatta o parole all'interno del campo selezionato per il filtro.

Campi di testo indicizzati per la ricerca full-text.

In

Corrisponde a qualsiasi valore in un set delimitato. Ad esempio, è possibile trovare elementi di lavoro i cui ID sono 100, 101 e 102 se si specificano quei valori per il campo ID.

Importante

Separare i valori con il separatore di elenco che corrisponde alle impostazioni internazionali definite per il computer client.È ad esempio possibile usare una virgola (,).

Numero, String, DateTime, TreePath

In Group

Corrisponde un valore che è un membro del gruppo nella clausola. I gruppi corrispondono al nome di una categoria o di un gruppo TFS. È possibile, ad esempio, creare una query per trovare tutti gli elementi di lavoro assegnati a membri del gruppo Contributors o a un team. I gruppi di team vengono creati quando si crea un team. Il nome dei gruppi di team seguono il modello [Nome progetto team]\ Nome team.

Non è possibile specificare un gruppo di sicurezza o di distribuzione di posta elettronica come valore.

Per esempi elaborati, vedere Query di esempio.

Valore String corrispondente al nome di un gruppo utenti o di un gruppo di categorie in Team Foundation Server.

Nota

È possibile usare l'operatore Nel gruppo solo con i campi che usano il tipo di dati String o il campo Tipo di elemento di lavoro.

Per informazioni sui gruppi di categorie, vedere Utilizzare le categorie per raggruppare tipi di elementi di lavoro.

Non nel gruppo

Non corrisponde a un valore che è un membro del gruppo nella clausola.

Valore String corrispondente al nome di un gruppo utenti in Team Foundation Server o di un gruppo di categorie definite per un progetto team.

Nota

È possibile usare l'operatore Non nel gruppo solo con i campi che usano il tipo di dati String o il campo Tipo di elemento di lavoro.

Per informazioni sui gruppi di categorie, vedere Utilizzare le categorie per raggruppare tipi di elementi di lavoro.

Era sempre

Corrisponde al valore nella clausola in corrispondenza di qualsiasi punto precedente.

String, DateTime

Incluso

Corrisponde al valore nella clausola o contenuto nel nodo nella clausola.

TreePath

Non incluso

Non corrisponde al valore nella clausola e non è contenuto nel nodo nella clausola.

TreePath

Torna all'inizio

Variabili di query

È possibile usare le variabili indicate nella tabella seguente per trovare elementi di lavoro correlati all'utente, al progetto o alla data corrente.

Variabile di query

Utilizzo

@Me

Usare questa variabile per eseguire automaticamente la ricerca dell'alias dell'utente corrente in un campo contenente alias utente. È ad esempio possibile trovare elementi di lavoro che sono stati aperti se si imposta la colonna Campo su Attivato da, la colonna Operatore su = e la colonna Valore su @Me.

@Project

Usare questa variabile per cercare elementi di lavoro nel progetto team corrente. È ad esempio possibile trovare tutti gli elementi di lavoro nel progetto team corrente se si imposta la colonna Campo su Progetto Team, la colonna Operatore su = e la colonna Valore su @Project.

@Today

Usare questa variabile per cercare elementi di lavoro correlati alla data corrente o a una data precedente. È inoltre possibile modificare la variabile @Today sottraendo giorni. È ad esempio possibile trovare tutti gli elementi attivati nell'ultima settimana se si imposta la colonna Campo su Data di attivazione, la colonna Operatore su >= e la colonna Valore su @Today - 7.

[Any]

Usare questa variabile per cercare elementi di lavoro correlati a qualsiasi valore che è stato definito per un particolare campo.

Torna all'inizio

Ricerche di parole parziali e full-text

Specificare Contiene o Non contiene per cercare corrispondenze esatte o parziali di una parola o una frase. Specificare Contiene parole o Non contiene parole per trovare una frase esatta o per usare il carattere jolly *. Tali operatori usano l'indice della ricerca full-text. È possibile usare il carattere jolly solo alla fine di una parola parziale o di una frase.

Per i relativi esempi, vedere Query elemento di lavoro di esempio e Eseguire query di elementi di lavoro tramite il campo Cronologia.

Nota

Non tutte le distribuzioni supportano le ricerche full-text.Ad esempio, SQL Express e SQL di Azure, che supportano Visual Studio Online, non supportano la ricerca full-text.In tali casi, verranno visualizzati solo gli operatori Contiene e Non contiene.

Contiene le parole e Non contiene parole filtrano gli elementi in base all'indice di ricerca full-text creato per campi di testo lungo. In Team Foundation vengono indicizzati automaticamente tutti i campi di testo con un tipo di dati PlainText e HTML e il campo Titolo per la ricerca full-text. L'indice e gli operatori sono disponibili solo se l'istanza di SQL Server che supporta Team Foundation Server supporta la ricerca full-text.

Ricerche full-text richiedono le regole di confronto SQL che corrispondono ad un linguaggio che ha un word breaker registrato con SQL Server. Se le impostazioni delle regole di confronto per il database della raccolta di progetti team usato per la istanza Team Foundation Server non corrispondono alla lingua supportata, i risultati della ricerca potrebbero non corrispondere alle aspettative. In questi casi, è possibile provare ad usare gli operatori Contiene o Non contiene.

Per altre informazioni, vedere Query di ricerca Full-Text e impostazioni delle regole di confronto.

Query dei campi indicizzati

Oltre all'indice di ricerca full-text, viene creato un indice di query che si basa sui campi con indicizzazione abilitata. L'indice della query migliora il tempo di risposta quando si eseguono query che includono i campi indicizzati.

Per impostazione predefinita, vengono indicizzati i campi Assegnato a, Data di creazione, Modificato da, Stato, Motivo, ID area, ID iterazione e Tipo di elemento di lavoro. Se esistono altri campi che il team usa spesso nelle query, è possibile aggiungerli all'indice di query.

Per abilitare o disabilitare l'indicizzazione per un campo, usare il comando witadmin indexfield. Vedere Gestire campi di elementi di lavoro [witadmin].

Vedere anche

Concetti

Eseguire query di elementi di lavoro