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

Làm thế nào tôi có thể đưa ra hai điều kiện trong điều khoản có

Như được ghi lại trong SELECT Cú pháp:

Nói cách khác, nó được áp dụng sau hoạt động nhóm đã được thực hiện (trái ngược với WHERE , được thực hiện trước bất kỳ hoạt động nhóm). Xem WHERE so với HAVING .

Do đó, truy vấn hiện tại của bạn trước tiên tạo thành tập kết quả từ sau:

SELECT   COUNT(domain) AS `sum domains`, file
FROM     `table`
GROUP BY Number

Xem nó trên sqlfiddle :

| SUM DOMAINS |      FILE |
---------------------------
|           2 | aaa.com_1 |
|           2 | bbb.com_1 |
|           1 | eee.com_1 |

Như bạn có thể thấy, các giá trị được chọn cho tệp file cột chỉ là một trong các giá trị từ mỗi nhóm — như được ghi lại trong MySQL Tiện ích mở rộng cho GROUP BY :

Sau đó, truy vấn hiện tại của bạn sẽ tiếp tục lọc các kết quả này theo HAVING của bạn mệnh đề:

HAVING   COUNT(Number) > 1 AND file LIKE '%\_1'

Với các giá trị của file được chọn ở trên, mỗi nhóm duy nhất phù hợp với tiêu chí thứ hai; và hai nhóm đầu tiên phù hợp với tiêu chí đầu tiên. Do đó, kết quả của truy vấn hoàn chỉnh là:

| SUM DOMAINS |      FILE |
---------------------------
|           2 | aaa.com_1 |
|           2 | bbb.com_1 |

Theo dõi nhận xét của bạn ở trên , bạn muốn lọc các bản ghi trên tệp file trước đây nhóm và sau đó lọc các nhóm kết quả cho những nhóm chứa nhiều hơn một kết quả phù hợp. Do đó, hãy sử dụng WHEREHAVING tương ứng (và chọn Number thay vì file để xác định từng nhóm):

SELECT   Number, COUNT(*) AS `sum domains`
FROM     `table`
WHERE    file LIKE '%\_1'
GROUP BY Number
HAVING   `sum domains` > 1

Xem nó trên sqlfiddle :

| NUMBER | SUM DOMAINS |
------------------------
|    222 |           2 |


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chèn dữ liệu từ một bảng khác bằng một vòng lặp trong mysql

  2. Làm cách nào để nhập dữ liệu vào cơ sở dữ liệu mysql thông qua bàn làm việc mysql?

  3. Làm thế nào để cấu hình Django bằng cách sử dụng pymysql làm trình điều khiển?

  4. MySQL &bộ lồng nhau:THAM GIA chậm (không sử dụng chỉ mục)

  5. Cấu trúc cơ sở dữ liệu liên quan đến các trường động