sql - MySQL Select - Merge rows when number -


i show results in 1 row , separated column specific values.

mysql> +----------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+------+---------------------+     -> | temp_series_id | co    | dp    | bo    | dz    | kt    | kr    | dr    | gz    | gp    | pd    | cd   | date                |     -> +----------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+------+---------------------+     -> |         272138 | 21.12 |  null |  null |  null |  null |  null |  null |  null |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null | 20.06 |  null |  null |  null |  null |  null |  null |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null | 18.69 |  null |  null |  null |  null |  null |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null | 21.81 |  null |  null |  null |  null |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null |  null | 22.06 |  null |  null |  null |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null |  null |  null | 22.44 |  null |  null |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null |  null |  null |  null | 14.69 |  null |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null |  null |  null |  null |  null | 24.69 |  null |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null |  null |  null |  null |  null |  null | 22.75 |  null | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null |  null |  null |  null |  null |  null |  null | 19.94 | null | 2017-08-20 14:06:46 |     -> |         272138 |  null |  null |  null |  null |  null |  null |  null |  null |  null |  null | 24.5 | 2017-08-20 14:06:46 |     -> +----------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+------+---------------------+ 

how can merge rows one? group temp_series_id , delete null values

select   sql_no_cache   temp_series_id,   case when temp_details_id = 1 value end 'co',   ...   case when temp_details_id = 11 value end 'cd',   date (select *       temp_series       order date desc       limit 1)      series inner join temp_object objects on series.id = objects.temp_series_id   inner join temp_details details on details.id = objects.temp_details_id; 

below can see result do

+----------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+------+---------------------+ | temp_series_id | co    | dp    | bo    | dz    | kt    | kr    | dr    | gz    | gp    | pd    | cd   | date                | +----------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+------+---------------------+ |         272138 | 21.12 | 20.06 | 18.69 | 21.81 | 22.06 | 22.44 | 14.69 | 24.69 | 22.75 | 19.94 | 24.5 | 2017-08-20 14:06:46 | +----------------+-------+-------+-------+-------+-------+-------+-------+-------+-------+-------+------+---------------------+ 

use aggregation:

select sql_no_cache        temp_series_id,        max(case when temp_details_id = 1 value end) co,        ...        max(case when temp_details_id = 11 value end) cd,        date (select *       temp_series       order date desc       limit 1      ) series inner join      temp_object objects      on series.id = objects.temp_series_id inner join      temp_details details      on details.id = objects.temp_details_id group temp_series_id, date; 

Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -