Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
I den här artikeln beskrivs de konventioner som du måste använda när du anger följande typer av literalvärden för ett sökvillkor:
- Textvärden
- Numeriska värden
- Datum
- Logiska värden
Anteckning
Informationen i den här artikeln härleds från reglerna för STANDARD SQL-92. Varje databas kan dock implementera SQL på sitt eget sätt. Därför kanske de riktlinjer som anges här inte gäller i alla fall. Om du har frågor om hur du anger sökvärden för en viss databas kan du läsa dokumentationen för databasen som du använder.
Sök efter textvärden
Följande riktlinjer gäller när du anger textvärden i sökvillkor:
Citattecken Omsluta textvärden inom enkla citattecken, som i det här exemplet för ett efternamn:
'Smith'Om du anger ett sökvillkor i villkorsfönstret (Verktyg för visuell databas) kan du helt enkelt skriva textvärdet och fråge- och vydesignern placerar automatiskt enkla citattecken runt det.
Anteckning
I vissa databaser tolkas termer med enkla citattecken som literalvärden, medan termer med dubbla citattecken tolkas som databasobjekt som kolumn- eller tabellreferenser. Även om fråge- och vydesignern kan acceptera termer inom dubbla citattecken kan det därför tolka dem annorlunda än du förväntar dig.
Bädda in apostrofer Om de data du söker efter innehåller ett enkelt citattecken (en apostrofer) kan du ange två enkla citattecken som anger att du menar det enkla citattecknet som ett literalvärde och inte en avgränsare. Följande villkor söker till exempel efter värdet "Swann's Way:"
='Swann''s Way'Längdgränser Överskrid inte den maximala längden på SQL-instruktionen för databasen när du anger långa strängar.
Skiftlägeskänslighet Följ skiftlägeskänslighetsreglerna för databasen du använder. Databasen du använder avgör om textsökningar är skiftlägeskänsliga. Vissa databaser tolkar till exempel operatorn "=" som en exakt skiftlägeskänslig matchning, men andra tillåter matchningar på valfri kombination av versaler och gemener.
Om du är osäker på om databasen använder en skiftlägeskänslig sökning kan du använda funktionerna UPPER eller LOWER i sökvillkoret för att konvertera fallet med sökdata, enligt följande exempel:
WHERE UPPER(lname) = 'SMITH'
Sök efter numeriska värden
Följande riktlinjer gäller när du anger numeriska värden i sökvillkor:
Anföringstecken
Använd inte citattecken runt tal.
Icke-numeriska tecken
Ta inte med icke-numeriska tecken förutom decimaltecknet (enligt definitionen i dialogrutan Regionala inställningar i Windows Kontrollpanel) och negativt tecken (-). Ta inte med teckengrupperingssymboler (till exempel kommatecken mellan tusentals) eller valutasymboler.
Decimaltecken
Om du anger heltal kan du inkludera ett decimaltecken, oavsett om värdet du söker efter är ett heltal eller ett verkligt tal.
Vetenskaplig notation
Du kan ange mycket stora eller mycket små tal med hjälp av vetenskaplig notation, som i det här exemplet:
> 1.23456e-9
Sök efter datum
Vilket format du använder för att ange datum beror på vilken databas du använder och i vilket fönster i fråge- och vydesignern du anger datumet.
Anteckning
Om du inte vet vilket format datakällan använder skriver du ett datum i filterkolumnen i fönstret Villkor i alla format som du känner till. Designern konverterar de flesta sådana poster till lämpligt format.
Fråge- och vydesignern kan fungera med följande datumformat:
Lokalanpassade
Det format som angetts för datum i dialogrutan Egenskaper för windows regionala inställningar .
Databasspecifik
Alla format som förstås av databasen.
ANSI-standarddatum
Ett format som använder klammerparenteser, markören "d" för att ange datum och en datumsträng, som i följande exempel:
{ d '1990-12-31' }ANSI standard datetime
Liknar ANSI-standarddatum, men använder "ts" i stället för "d" och lägger till timmar, minuter och sekunder till datumet (med en 24-timmarsklocka), som i det här exemplet för 31 december 1990:
{ ts '1990-12-31 00:00:00' }I allmänhet används ANSI-standarddatumformatet med databaser som representerar datum med hjälp av en sann datumdatatyp. Datetime-formatet används däremot med databaser som stöder en datetime-datatyp.
I följande tabell sammanfattas det datumformat som du kan använda i olika fönster i fråge- och vydesignern.
| Ruta | Datumformat |
|---|---|
| Kriterier | Lokalspecifik databas-särskild ANSI-standard Datum som anges i villkorsfönstret (Visual Database Tools) konverteras till ett databaskompatibelt format i SQL-fönstret. |
| SQL | Databasspecifik ANSI-standard |
| Resultat | Lokalspecifika |
Sök efter logiska värden
Formatet för logiska data varierar från databas till databas. Mycket ofta lagras värdet False som noll (0). Värdet True lagras oftast som 1 och ibland som -1. Följande riktlinjer gäller när du anger logiska värden i sökvillkor:
Om du vill söka efter värdet False använder du en nolla, som i följande exempel:
SELECT * FROM authors WHERE contract = 0;Om du inte är säker på vilket format du ska använda när du söker efter ett True-värde kan du prova att använda 1, som i följande exempel:
SELECT * FROM authors WHERE contract = 1;Du kan också utöka sökomfånget genom att söka efter ett värde som inte är noll, som i följande exempel:
SELECT * FROM authors WHERE contract <> 0;