VARCHAR(MAX)
type thay thế cho TEXT
. Sự khác biệt cơ bản là TEXT
type sẽ luôn lưu trữ dữ liệu trong một blob trong khi VARCHAR(MAX)
type sẽ cố gắng lưu trữ dữ liệu trực tiếp trong hàng trừ khi nó vượt quá giới hạn 8k và tại thời điểm đó, nó sẽ lưu trữ nó trong một đốm màu.
Sử dụng câu lệnh LIKE là giống hệt nhau giữa hai kiểu dữ liệu. Chức năng bổ sung VARCHAR(MAX)
cung cấp cho bạn là nó cũng có thể được sử dụng với =
và GROUP BY
như bất kỳ VARCHAR
nào khác cột có thể được. Tuy nhiên, nếu bạn có nhiều dữ liệu, bạn sẽ gặp vấn đề lớn về hiệu suất khi sử dụng các phương pháp này.
Về việc bạn có nên sử dụng LIKE
hay không để tìm kiếm hoặc nếu bạn nên sử dụng Lập chỉ mục văn bản đầy đủ và CONTAINS
. Câu hỏi này giống nhau bất kể VARCHAR(MAX)
hoặc TEXT
.
Nếu bạn đang tìm kiếm một lượng lớn văn bản và hiệu suất là yếu tố then chốt thì bạn nên sử dụng Chỉ mục văn bản đầy đủ .
LIKE
đơn giản hơn để triển khai và thường phù hợp với lượng dữ liệu nhỏ, nhưng nó có hiệu suất cực kỳ kém với dữ liệu lớn do không có khả năng sử dụng chỉ mục.