[英]MySQL SELECT COUNT returning NULL
我正在嘗試獲取特定項目的評論數。
$stmt1 = $conn->prepare("SELECT COUNT(r_value) FROM ratings WHERE r_snippet=? AND r_value=3 OR r_value=2");
$stmt2 = $conn->prepare("SELECT COUNT(c_id) FROM comments WHERE c_snippet=?");
foreach ($snippets as $snippet){
$s_id = $snippet['s_id'];
$s_thumb = $snippet['s_thumb'];
$stmt1->bind_param("i",$s_id);
$stmt1->execute();
$stmt1->bind_result($numLikes);
$stmt1->fetch();
$stmt2->bind_param("i",$s_id);
$stmt2->execute();
$stmt2->bind_result($numComments);
$stmt2->fetch();
?>
** HTML here **
<?php
}
$stmt1->close();
$stmt2->close();
?>
$numLikes
正常工作,但$numComments
似乎返回NULL(從var_dump
),我不確定為什么。 phpMyAdmin中的SQL可以正常工作並返回注釋數...
您可能想在第一個查詢中更改此設置
... AND r_value=3 OR r_value=2
至
... AND (r_value=3 OR r_value=2)
或這個
... AND r_value IN (2,3)
但是對於第二個查詢,請嘗試一些簡單的調試操作
$stmt2 = $conn->prepare("SELECT * FROM comments WHERE c_snippet=10");
然后
$stmt2 = $conn->prepare("SELECT count(*) FROM comments WHERE c_snippet=10");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.