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

Tìm kiếm MYSQL qua các ô có giá trị được phân tách bằng dấu phẩy

Đây là một dấu hiệu của thiết kế DB xấu, trước tiên bạn nên xem xét Chuẩn hóa cơ sở dữ liệu và nếu bạn có thể thay đổi cấu trúc thì trước tiên hãy chuẩn hóa nó bằng cách sử dụng bảng nối. Hiện tại, bạn có thể sử dụng FIND_IN_SET () để tìm id bản ghi tương ứng của bạn trong cột id được phân tách bằng dấu phẩy

SELECT * FROM table 
WHERE  FIND_IN_SET('id1',column) > 0
AND FIND_IN_SET('id2',column) > 0
AND FIND_IN_SET('id3',column) > 0

Thay đổi toán tử theo ý muốn của bạn, tôi đã đưa ra ví dụ với toán tử AND, lưu ý rằng bạn cần sử dụng FIND_IN_SET bao nhiêu lần số id bạn có trong mảng mà bạn cần so sánh với cột của mình




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Đếm bao nhiêu hàng được chèn từ truy vấn SQL cuối cùng

  2. Cách cung cấp các truy vấn mysql từ bash

  3. Chuyển đổi TIME_STAMP địa phương sang giờ UTC

  4. đá quý mysql2, Rails 3.0.3 và lỗi mã hóa ký tự không tương thích

  5. Tại sao không kết nối trực tiếp android với cơ sở dữ liệu?