Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Mệnh đề WHERE trên SQL Server Kiểu dữ liệu văn bản

Bạn có thể sử dụng LIKE thay vì = . 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ỳ cột nào rộng hơn 900 byte mặc dù bạn có thể thêm checksum được tính toán hoặc hash cột có thể được sử dụng để tăng tốc loại truy vấn này.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server câu lệnh tham gia có điều kiện

  2. Cách cài đặt sqlcmd &bcp trên SUSE

  3. Trả lại Tên máy trạm hiện tại được kết nối với SQL Server (T-SQL)

  4. Lọc trên mệnh đề đầu ra sql

  5. Trả lại tất cả các hàng từ một phân vùng cụ thể trong SQL Server (T-SQL)