public function votesThisMonth()
{
$this->query = $this->pdo->prepare
("
SELECT
COUNT(*) AS num_votes
FROM
votes
WHERE
YEAR(year) = YEAR(CURRENT_DATE)
AND MONTH(month) = MONTH(CURRENT_DATE)
");
$result = $this->query->execute();
return $result['num_votes'];
}
我要回那些在2013年和月5 所有行,但它返回「1」,而我有10+行與同數據?如何從一個查詢PHP返回COUNT(*)的結果
我做錯了什麼?
這些是位於我的數據庫中的行:
id ip year month
1 127.0.0.1 2013 5
2 127.0.0.1 2013 5
3 127.0.0.1 2013 5
4 127.0.0.1 2013 5
5 127.0.0.1 2013 5
6 127.0.0.1 2013 5
7 127.0.0.1 2013 5
8 127.0.0.1 2013 5
9 127.0.0.1 2013 5
10 127.0.0.1 2013 5
11 127.0.0.1 2013 5
12 127.0.0.1 2013 5
13 127.0.0.1 2013 5
14 127.0.0.1 2013 5
15 127.0.0.1 2013 5
編輯我的方法請看:
public function votesThisMonth()
{
$this->query = $this->pdo->prepare
("
SELECT
*
FROM
votes
WHERE
YEAR(year) = YEAR(CURRENT_DATE)
AND MONTH(month) = MONTH(CURRENT_DATE)
");
$this->query->execute();
return $this->query->rowCount();
}
這將返回 '0',爲什麼?
返回現在什麼都沒有 – user2363542 2013-05-13 21:24:56
我已經添加了我的表格外觀編輯 – user2363542 2013-05-13 21:25:21
count($ result-> fetchAll())。返回所有提取的行。如果您選擇一個列而不是count(*),這將起作用。 – 2013-05-13 21:28:30