私はここで何が起こっているのか分かりません。私はMySQLのビューを作成し、4つの異なるテーブルからいくつかのデータを取得するが、それは最初のレコードを返すようです。SQL VIEWのみ最初のレコードを返す
私は、このビューに対して選択しようとすると、それは最初のレコードだけを返しますCREATE OR REPLACE VIEW request_view AS
SELECT
TRequest.id,
TRequest.minutes_required,
TRequest.expires_at,
User.name AS author,
TRequest.abstract_text,
TRequest.full_text,
TGroup.name AS tgroup,
SUM(TOrder.minutes) AS total_minutes
FROM
TRequest
JOIN User ON TRequest.author_id = User.id
LEFT JOIN TGroup ON TRequest.group_id = TGroup.id
LEFT JOIN TOrder ON TRequest.id = TOrder.request_id
ORDER BY TRequest.created_at;
:私は30のTRequest行を持って
mysql> select id from request_view;
+----+
| id |
+----+
| 1 |
+----+
1 row in set (0.00 sec)
mysql> select id from request_view where id=2;
Empty set (0.00 sec)
を...とにかくそこにある私は、ビューがすべてを返すように得ることができますTRequest記録?または単にビューを間違って使用していますか?
TRequest、TGroup、およびTorderにも対応するレコードがある行はいくつありますか?私は1つを賭けている。質問にすべてのテーブルの内容を含めることができますか? – JohnFx