如何在结果中找不到行?

时间:2018-06-04 09:18:26

标签: php mysql pdo

我需要从数据库中获取结果以及在其上找到的总行数,在WHERE status = 1上找到的行数以及在WHERE status = 0上找到的行数。

这是我的查询

$this->db->query('SELECT id, book_title, tag, book_no, status FROM books WHERE tag LIKE :key');

$this->db->bind(':key', "%$key%");

2 个答案:

答案 0 :(得分:0)

不确定您究竟在寻找什么,但如果您有兴趣获取status = 1且status = 0的记录数,则可以使用以下sql查询。

select status, count(id) from books where status in (0,1) group by status;

答案 1 :(得分:-1)

我找到了一种方法来解决这个问题,但我不知道这是正确的方法,如果不是正确的方法解释我

$this->db->query('SELECT id, book_title, tag, book_no, status,
                (SELECT count(*) FROM books WHERE tag LIKE :key) AS total_books,
                (SELECT count(*) FROM books WHERE tag LIKE :key AND status = 1) AS total_available_books 
                FROM books WHERE tag LIKE :key');

$this->db->bind(':key', "%$key%");