我的设置表有setactive(字段),其中包含2个已知值:0或1
如何通过一个查询对字段setsactive get: 计算值为" 0"并计算值为" 1"
的行$stmt = $conn->prepare('SELECT setsid, setsname, setsactive, setstype
FROM settings WHERE setsactive = ?');
$setsactive = 0;
$stmt->bindValue(':setsactive', $setsactive, PDO::PARAM_INT);
$stmt->execute();
echo $rows_set_active = $stmt->rowCount();
$setsactive1 = 1;
$stmt->bindValue(':setsactive', $setsactive1, PDO::PARAM_INT);
$stmt->execute();
echo $rows_set_deactive = $stmt->rowCount();
感谢
更新了>删除第二个查询
答案 0 :(得分:1)
尝试以下方法:
SELECT
setsactive,
COUNT(1) AS totalCount
FROM settings
GROUP BY setsactive
或
SELECT
setsactive,
SUM( IF(setsactive = 1, 1, 0) ) AS activeCount,
SUM( IF(setsactive = 0, 1, 0) ) AS deactiveCount
FROM settings
答案 1 :(得分:1)
SELECT setsactive, count(*) cnt FROM settings GROUP BY setsactive
否 - 如果您坚持完全错误计算方式 - 您可以在一次通话中运行这两个错误的查询。满意吗?