VARCHAR(MAX)
type je náhrada za TEXT
. Základní rozdíl je v tom, že TEXT
typ bude vždy ukládat data do blob, zatímco VARCHAR(MAX)
type se pokusí uložit data přímo do řádku, pokud nepřekročí limit 8 kB, a v tom okamžiku je uloží do blob.
Použití příkazu LIKE je mezi těmito dvěma datovými typy identické. Další funkce VARCHAR(MAX)
vám je, že jej lze také použít s =
a GROUP BY
jako jakýkoli jiný VARCHAR
sloupec může být. Pokud však máte hodně dat, budete mít při použití těchto metod velký problém s výkonem.
Pokud jde o to, zda byste měli použít LIKE
pro vyhledávání, nebo pokud byste měli použít Indexování celého textu a CONTAINS
. Tato otázka je stejná bez ohledu na VARCHAR(MAX)
nebo TEXT
.
Pokud prohledáváte velké množství textu a výkon je klíčový, měli byste použít Fulltext Index .
LIKE
je jednodušší na implementaci a je často vhodný pro malá množství dat, ale má extrémně špatný výkon s velkými daty kvůli nemožnosti použít index.