topic: db (PDO / SQL / マルチDB) / ch07 — fetch のモード / 演習 02
📝 ドリル 02 — fetchColumn で COUNT(*)
問題
users テーブルの 件数 を SELECT COUNT(*) FROM users で取得して、
"件数: {n}" の形式で出力してください。
取り出しには fetchColumn() を使うこと。
初期データは 4 件入っているので、出力は 4 になる。
期待される出力:
件数: 4
採点
php scripts/grade.php topics/11-db/ch07-fetch-modes/drill/02-fetch-column/
ヒント
$stmt = $pdo->query("SELECT COUNT(*) FROM users");$count = $stmt->fetchColumn();- 集計の単一値は fetchAll より fetchColumn の方が短く書ける
テストケース
期待される出力
件数: 4
📄 starter.php(雛形)
このコードから書き始めてください。
<?php
$pdo = new PDO('sqlite:' . getenv('DOJO_DB_PATH'));
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// TODO: SELECT COUNT(*) FROM users を実行する
// TODO: fetchColumn() で単一値を取り出す
// TODO: "件数: {n}" の形式で出力する
✅ 解答例を見る(自分で解いてから)
<?php
$pdo = new PDO('sqlite:' . getenv('DOJO_DB_PATH'));
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $pdo->query("SELECT COUNT(*) FROM users");
$count = $stmt->fetchColumn();
echo "件数: {$count}\n";