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

Truy vấn MySQL với nhiều câu lệnh AND dường như đang bỏ qua một

Vấn đề là với mức độ ưu tiên của OR / AND điều kiện. AND có mức độ ưu tiên cao hơn OR , đó là lý do tại sao trước tiên nó đánh giá tất cả các điều kiện được kết nối bởi AND (tags-merch, newsID-2134 và status-1) và sau đó đánh giá cả thẻ-gda và tags-cuộc thi).

Cố gắng thêm dấu ngoặc vuông:

SELECT *  
  FROM  `posts`  
 WHERE (`tags` LIKE  '%gda%' 
    OR  `tags` LIKE  '%contests%' 
    OR  `tags` LIKE  '%merch%')
   AND  `newsID` !=  '2134' 
   AND `status` > '1' 
ORDER BY  `postDate` DESC
LIMIT 5


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. đăng nhập bằng tên người dùng hoặc địa chỉ email trong php

  2. Sắp xếp tự nhiên trong MySQL

  3. java.lang.ClassNotFoundException:com.mysql.jdbc.Driver trong thời gian chạy (eclipse / maven / tomcat)

  4. BIGINT Lỗi ngoài phạm vi kể từ MySQL 5.5

  5. Tại sao lại xóa công cụ đặt init_command =INNODB của django DATABASE_OPTIONS sau khi tạo bảng?