Tôi muốn lấy số hàng đã chọn cũng như dữ liệu đã chọn. Hiện nay tôi phải sử dụng hai câu lệnh sql:Cách lấy số hàng của kết quả được chọn từ sqlite3?
một là
select * from XXX where XXX;
khác được
select count(*) from XXX where XXX;
Nó có thể được thực hiện với một chuỗi sql đơn?
Tôi đã kiểm tra mã nguồn của sqlite3 và tôi đã tìm thấy chức năng của sqlite3_changes()
. Nhưng chức năng này chỉ hữu ích khi cơ sở dữ liệu được thay đổi (sau insert, delete or update
).
Có ai có thể giúp tôi giải quyết vấn đề này không? Cảm ơn nhiều!
Mặc dù câu trả lời là có, hầu hết các câu trả lời dưới đây thêm phức tạp, bạn nên tránh. Không có gì sai khi chạy hai truy vấn.Nếu bạn đang xử lý dữ liệu sau truy vấn, bạn cũng có thể sử dụng các phương thức 'count()' hoặc 'size()' của đối tượng thu kết quả của bạn, tùy thuộc vào ngôn ngữ bạn đang sử dụng. – alttag