Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Clause WHERE sur le type de données SQL Server Text

Vous pouvez utiliser LIKE au lieu de = . Sans aucun caractère générique, cela aura le même effet.

DECLARE @Village TABLE
        (CastleType TEXT)

INSERT INTO @Village
VALUES
  (
    'foo'
  )

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

text est obsolète. Passage à varchar(max) sera plus facile à travailler.

De plus, quelle est la taille probable des données ? Si vous allez faire des comparaisons d'égalité, vous voudrez idéalement indexer cette colonne. Ce n'est pas possible si vous déclarez la colonne comme étant plus large que 900 octets, bien que vous puissiez ajouter une checksum calculée ou hash colonne qui peut être utilisée pour accélérer ce type de requête.