sql >> Databasteknik >  >> RDS >> Sqlserver

Använda varchar(MAX) vs TEXT på SQL Server

VARCHAR(MAX) typ är en ersättning för TEXT . Den grundläggande skillnaden är att en TEXT typ kommer alltid att lagra data i en blob medan VARCHAR(MAX) typ kommer att försöka lagra data direkt i raden om den inte överskrider 8k-begränsningen och vid den tidpunkten lagrar den den i en blob.

Att använda LIKE-satsen är identisk mellan de två datatyperna. Tilläggsfunktionen VARCHAR(MAX) ger dig är att den också kan användas med = och GROUP BY som alla andra VARCHAR kolumn kan vara. Men om du har mycket data kommer du att ha ett enormt prestandaproblem med dessa metoder.

När det gäller om du ska använda LIKE för att söka, eller om du ska använda Fulltextindexering och CONTAINS . Den här frågan är densamma oavsett VARCHAR(MAX) eller TEXT .

Om du söker i stora mängder text och prestanda är nyckeln bör du använda ett Full Text Index .

LIKE är enklare att implementera och är ofta lämplig för små mängder data, men den har extremt dålig prestanda med stora data på grund av dess oförmåga att använda ett index.



  1. Hur använder man scheman i Django?

  2. Räkna Antal konsekutiv förekomst av värden i tabell

  3. Installera WordPress med WP-CLI

  4. AOL/J Setup Test Suite