Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
si applica a:SQL Server
In questo argomento vengono illustrate le convenzioni da usare quando si immettono i tipi di valori letterali seguenti per una condizione di ricerca:
Valori di testo
Valori numerici
Date
Valori logici
Annotazioni
Le informazioni contenute in questo argomento sono derivate dalle regole per SQL-92 standard. Tuttavia, ogni database può implementare SQL in modo autonomo. Pertanto, le linee guida fornite qui potrebbero non essere applicabili in ogni caso. Per domande su come immettere i valori di ricerca per un database specifico, vedere la documentazione relativa al database in uso.
Ricerca di valori di testo
Quando si immettono valori di testo nelle condizioni di ricerca, si applicano le linee guida seguenti:
Virgolette Racchiudere i valori di testo tra virgolette singole, come in questo esempio per un cognome:
'Smith'
Se si immette una condizione di ricerca nel riquadro Criteri, è sufficiente digitare il valore di testo e il Progettazione Query e Progettazione Viste inserirà automaticamente le virgolette singole.
Annotazioni
In alcuni database, i termini tra virgolette singole vengono interpretati come valori letterali, mentre i termini tra virgolette doppie vengono interpretati come oggetti di database come riferimenti a colonne o tabelle. Pertanto, anche se la Progettazione query e viste può accettare termini tra virgolette doppie, potrebbe interpretarli diversamente da quanto ti aspetti.
Incorporamento di apostrofi Se i dati cercati contengono una virgoletta singola (apostrofo), è possibile immettere due virgolette singole per indicare che si intende la virgoletta singola come valore letterale e non come delimitatore. Ad esempio, la condizione seguente cerca il valore "Swann's Way:"
='Swann''s Way'
Limiti di lunghezza Non superare la lunghezza massima dell'istruzione SQL per il database quando si immettono stringhe lunghe.
Distinzione tra maiuscole e minuscole Seguire le regole di distinzione tra maiuscole e minuscole per il database in uso. Il database in uso determina se le ricerche di testo fanno distinzione tra maiuscole e minuscole. Ad esempio, alcuni database interpretano l'operatore "=" per indicare una corrispondenza esatta con distinzione tra maiuscole e minuscole, ma altre consentono corrispondenze su qualsiasi combinazione di caratteri maiuscoli e minuscoli.
Se non si è certi che il database usi una ricerca con distinzione tra maiuscole e minuscole, è possibile usare le funzioni UPPER o LOWER nella condizione di ricerca per convertire il caso dei dati di ricerca, come illustrato nell'esempio seguente:
WHERE UPPER(lname) = 'SMITH'
Ricerca di valori numerici
Quando si immettono valori numerici nelle condizioni di ricerca, si applicano le linee guida seguenti:
Virgolette Non racchiudere i numeri tra virgolette.
Caratteri non numerici Non includere caratteri non numerici tranne il separatore decimale (come definito nella finestra di dialogo Impostazioni internazionali del Pannello di controllo di Windows) e il segno negativo (-). Non includere simboli di raggruppamento di cifre (ad esempio una virgola tra migliaia) o simboli di valuta.
Segni decimali Se si immettono numeri interi, è possibile includere un segno decimale, indipendentemente dal fatto che il valore che si sta cercando sia un numero intero o un numero reale.
Notazione scientifica È possibile immettere numeri molto grandi o molto piccoli usando la notazione scientifica, come in questo esempio:
> 1.23456e-9
Ricerca per date
Il formato utilizzato per immettere le date dipende dal database in uso e dal riquadro di Progettazione query e Progettazione viste in cui si sta immettendo la data.
Annotazioni
Se non si conosce il formato usato dall'origine dati, digitare una data nella colonna filtro del riquadro Criteri in qualsiasi formato familiare. Il progettista convertirà la maggior parte di tali voci nel formato appropriato.
Il Progettista di query e viste può funzionare con i seguenti formati di data:
Impostazioni locali specifiche Formato specificato per le date nella finestra di dialogo Proprietà impostazioni internazionali di Windows.
Specifico del database Qualsiasi formato riconosciuto dal database.
Data standard ANSI Formato che usa parentesi graffe, il marcatore 'd' per designare la data e una stringa di data, come nell'esempio seguente:
{ d '1990-12-31' }
ANSI standard datetime Analogamente alla data standard ANSI, ma usa 'ts' invece di 'd' e aggiunge ore, minuti e secondi alla data (usando un orologio di 24 ore), come in questo esempio per il 31 dicembre 1990:
{ ts '1990-12-31 00:00:00' }
In generale, il formato di data standard ANSI viene usato con i database che rappresentano le date usando un tipo di dati data effettivo. Al contrario, il formato datetime viene usato con i database che supportano un tipo di dati datetime.
Nella tabella seguente è riepilogato il formato di data che puoi utilizzare nei diversi riquadri di Progettazione query e Progettazione viste.
Pannello | Formato data |
---|---|
Criteri | Standard ANSI specifico delle impostazioni locali e dei database Le date immesse nel riquadro Criteri vengono convertite in un formato compatibile con il database nel riquadro SQL. |
SQL | Standard ANSI specifico per database |
Risultati | Specifico del contesto locale |
Ricerca di valori logici
Il formato dei dati logici varia da database a database. Molto frequentemente, un valore False viene archiviato come zero (0). Il valore True viene archiviato più frequentemente come 1 e occasionalmente come -1. Quando si immettono valori logici nelle condizioni di ricerca, si applicano le linee guida seguenti:
Per cercare un valore False, usare uno zero, come nell'esempio seguente:
SELECT * FROM authors WHERE contract = 0
Se non si è certi del formato da usare durante la ricerca di un valore True, provare a usare 1, come nell'esempio seguente:
SELECT * FROM authors WHERE contract = 1
In alternativa, è possibile ampliare l'ambito della ricerca cercando qualsiasi valore diverso da zero, come nell'esempio seguente:
SELECT * FROM authors WHERE contract <> 0