mysql - SQL VIEW only returning first record -


i'm not sure going on here. have created mysql view , grab data out of 4 different tables seems returning first record.

create or replace view request_view   select     trequest.id,     trequest.minutes_required,     trequest.expires_at,     user.name author,     trequest.abstract_text,     trequest.full_text,     tgroup.name tgroup,     sum(torder.minutes) total_minutes       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 trequest.created_at; 

when try select against view return first record:

mysql> select id request_view; +----+ | id | +----+ |  1 | +----+ 1 row in set (0.00 sec)  mysql> select id request_view id=2; empty set (0.00 sec) 

i have 30 trequest rows... there anyway can view return of trequest records? or using view incorrectly?

you're doing sum without group by. sum aggregate function make sense on group of rows. if don't specify columns group by, default take sum on rows, means 1 result.

if want 1 row each column in trequest, try adding group trequest.id view definition.


Comments

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -