Có hai loại kết quả tôi muốn quay trở lại:truy vấn SQL để chọn tối thiểu 10 kết quả
- Thông báo chưa đọc
- đọc thông báo
Nếu có> 10 thông báo chưa đọc sẵn tôi muốn chọn bao nhiêu là có
Nếu có < = 10, tôi muốn chọn tất cả (nói có 7) thông báo chưa đọc và 3 'bộ nạp' không đọc tifications. Làm thế nào tôi có thể thực hiện điều này?
Nếu tôi muốn chỉ cần chọn tất cả các thông báo chưa đọc truy vấn của tôi sẽ là:
SELECT * FROM notifications WHERE read = 0
Nếu tôi muốn chỉ cần chọn tất cả các thông báo đọc truy vấn của tôi sẽ là:
SELECT * FROM notifications WHERE read = 1
Bạn có thể giải thích những gì đang xảy ra ở đây không ít? Riêng r <= 10 và (SELECT @rownum: = 0) r – maxhud
Cảm ơn lời giải thích! Câu trả lời chính xác. – maxhud
Tất cả các hàng được đánh số, bắt đầu từ hàng chưa đọc đến đọc. Nếu chưa đọc> = 10, thì tất cả chưa đọc được chọn. Nếu chưa đọc <10, việc đánh số tiếp tục vào các hàng đã đọc, nhưng chúng tôi chỉ muốn các hàng được đánh số <= 10 – codingbiz