sql >> Database teknologi >  >> RDS >> Sqlserver

WHERE-sætning på SQL Server Tekstdatatype

Du kan bruge LIKE i stedet for = . Uden jokertegn vil dette have samme effekt.

DECLARE @Village TABLE
        (CastleType TEXT)

INSERT INTO @Village
VALUES
  (
    'foo'
  )

SELECT *
FROM   @Village
WHERE  [CastleType] LIKE 'foo' 

text er forældet. Skifter til varchar(max) bliver nemmere at arbejde med.

Og hvor store er dataene sandsynligvis? Hvis du skal lave ligestillingssammenligninger, vil du ideelt set ønske at indeksere denne kolonne. Dette er ikke muligt, hvis du erklærer kolonnen som noget bredere end 900 bytes, selvom du kan tilføje en beregnet checksum eller hash kolonne, der kan bruges til at fremskynde denne type forespørgsel.



  1. Den mest effektive måde at indsætte rækker i MySQL-databasen

  2. Hent poster, der ikke er nul efter decimaltegnet i PostgreSQL

  3. Kopiering af en række i den samme tabel uden at skulle indtaste de 50+ kolonnenavne (mens du skifter 2 kolonner)

  4. Databasevalg til oprettelse af to forbundne tabeller?