sql >> Databasteknik >  >> RDS >> Sqlserver

WHERE-sats på SQL Server Textdatatyp

Du kan använda LIKE istället för = . Utan jokertecken kommer detta att ha samma effekt.

DECLARE @Village TABLE
        (CastleType TEXT)

INSERT INTO @Village
VALUES
  (
    'foo'
  )

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

text är utfasad. Ändra till varchar(max) blir lättare att arbeta med.

Och hur stor är informationen sannolikt? Om du ska göra jämställdhetsjämförelser vill du helst indexera den här kolumnen. Detta är inte möjligt om du deklarerar kolumnen som något bredare än 900 byte även om du kan lägga till en beräknad checksum eller hash kolumn som kan användas för att snabba upp denna typ av fråga.



  1. SQL Server motsvarande Oracles CREATE OR REPLACE VIEW

  2. Hur man filtrerar frågeresultat i PostgreSQL

  3. Oracle Trigger WHEN Klausulexempel

  4. Få skillnaden mellan två datum både i månader och dagar i sql