私はレポートと割り当てテーブルのレコードの総数をカウントしようとしているので、メインテーブルグループから情報を取得しています。グループには主キーIDがあり、他のテーブルにはgidとして保存されます。これはクエリです:SQL Joinは1つのレコードしか返しません。
SELECT `group`.`id` AS `gid`
, `group`.`name` AS `g_name`
, COUNT(`report`.`id`) AS `reports`
FROM `group`
LEFT OUTER JOIN `report` ON `report`.`gid` = `group`.`id`
LEFT OUTER JOIN `assignment` ON `assignment`.`gid` = `group`.`id`
WHERE `group`.`active` = 0
ORDER BY
`group`.`name`;
私はこの問題を実行するたびに、複数のグループがあっても1つのレコードしか返されません。
ありがとうございます。
どのRDBMSですか?これはSQL Serverでも解析されません。 – Yuck
downvoteするつもりはありませんが、テーブル "group"の名前を付けるために-5を与えたいと思います。少なくとも括弧で囲んでください...してください。 –
それはmysqlなので、誰かがそれを編集したばかりでないからです。 – Parham