Bạn có thể sử dụng LIKE
thay thế =
. Không có bất kỳ ký tự đại diện nào, điều này sẽ có tác dụng tương tự.
DECLARE @Village TABLE
(CastleType TEXT)
INSERT INTO @Village
VALUES
(
'foo'
)
SELECT *
FROM @Village
WHERE [CastleType] LIKE 'foo'
text
không được dùng nữa. Thay đổi thành varchar(max)
sẽ dễ làm việc hơn.
Ngoài ra, dữ liệu có thể lớn đến mức nào? Nếu bạn đang thực hiện so sánh bình đẳng, lý tưởng là bạn sẽ muốn lập chỉ mục cột này. Điều này không thể thực hiện được nếu bạn khai báo cột là bất kỳ thứ gì rộng hơn 900 byte mặc dù bạn có thể thêm một cột được tính toán checksum
hoặc hash
có thể được sử dụng để tăng tốc loại truy vấn này.
VARCHAR(MAX)
thay vìTEXT
- kiểu dữ liệu đó không được dùng nữa