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

Làm cách nào để chọn theo một loạt các ký tự bắt đầu?

Nhanh hơn Regular expressionsSUBSTRING() các cuộc gọi chức năng. Điều này sẽ sử dụng chỉ mục của symbolName :

WHERE symbolName >= 'A' 
  AND symbolName < 'G'

Tuy nhiên, có một vấn đề với độ phân biệt chữ hoa chữ thường. Bạn có muốn tên bắt đầu bằng a..f quá hay không?

Nếu bạn chỉ muốn những tên bắt đầu bằng chữ hoa và bảng có utf8 bộ ký tự, sử dụng:

WHERE symbolName >= 'A' COLLATE utf8_bin
  AND symbolName < 'G' COLLATE utf8_bin

Đối với các bộ ký tự khác, hãy sử dụng _bin tương ứng đối chiếu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các tập lệnh MySQL trong docker-entrypoint-initdb không được thực thi

  2. MySQL HẠN CHẾ và KHÔNG CÓ HÀNH ĐỘNG

  3. php chèn nhiều giá trị vào các hàng riêng biệt trong bảng mysql

  4. Cách dừng truy vấn mysql đang chạy

  5. Cách chèn bản ghi từ bảng này sang bảng khác mà không bị trùng lặp