mysql - fill groups with values based on group values (update with group bys) - SQL - postgre -
i have situation in produce output, , based on gorup of belonging, gets , index (common group). production goes on , insert new values belong same group. want assign these new records same "marker" group had. i'd sql alone. detailed in picture below, groups composed tuple (continent, zone, state) i, in fact, group by. (table name: 'geo')
how can put number 5 aside manchester , 6 aside lyon?
if ok first inserting data, , running second query update blank group numbers, there 1 option:
update yourtable t1 set group = t2.group ( select continent, zone, state max(group) group yourtable group continent, zone, state ) t2 t1.continent = t2.continent , t1.zone = t2.zone , t1.state = t2.state the inner query in from clause finds maximum group value each continent, zone, state combination. there should 2 types of values each group combination, namely number and/or null. null value indicate record newly inserted, ignored max function.

Comments
Post a Comment