$stmt = $con->prepare("SELECT t.name, COUNT(*)
FROM team t
JOIN member m ON FIND_IN_SET(m.team_id, t.id) >0
GROUP BY t.name
LIMIT 0 , 30");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_BOUND);
$stmt->bindColumn('count', $count);
$stmt->bindColumn('name', $name);
while ($row = $stmt->fetch())
{
echo "<tr><td>".$name."</td>";
echo "<td>".$count."</td>";
}
上記のコードでは、2列の名前とcount(*)
を取得しています。問題は、カウント列にアクセスすることです。私は以下のエラーを受け取ります。PDOクエリでカウント(*)列を参照する方法
Warning: PDOStatement::bindColumn(): SQLSTATE[HY000]: General error: Did not find column name 'count' in the defined columns; it will not be bound in
どのように合計カウントにバインドできますか?
私はエイリアシングがうまくいくと思っていますが、私は前に 'bindcolumn'を使っていません。 '名前として名前を選択し、カウントとしてカウント(*)。 – chris85
エイリアシングは間違いなく道のりですが、 'var_dump($ row);'でキーが何であるかを見ることもできます。 – Sammitch