让我解释一下我的情况,我在excel中有一个表示例,就像这样,TOTAL列目前无关紧要。
Nombre MachID LUN-25 TOTAL MART-26 TOTAL MIER-27 TOTAL
1 LUPITA 1 100 <blank> <blank> <blank> 20 <blank>
2 LUPITA 2 150 <blank> <blank> <blank> 30 <blank>
3 LUPITA 3 200 450 <blank> <blank> 50 100
4 SELENE 4 148 380 256 256 <blank> <blank>
5 SERGIO BILL 5 509 370 500 500 <blank> <blank>
我正在做一些查询连接表并透视它们,但是我得到了一些像这样的表。
Nombre MachID LUN-25 TOTAL MART-26 TOTAL MIER-27 TOTAL
1 LUPITA 1 100 <blank> <blank> <blank> <blank> <blank>
2 LUPITA 2 150 <blank> <blank> <blank> <blank> <blank>
3 LUPITA 3 200 450 <blank> <blank> <blank>
4 LUPITA 1 <blank> <blank> <blank> <blank> 20 <blank>
5 LUPITA 2 <blank> <blank> <blank> <blank> 30 <blank>
6 LUPITA 3 <blank> <blank> <blank> <blank> 50 100
7 SELENE 4 148 380 <blank> <blank> <blank> <blank>
8 SELENE 4 <blank> <blank> 256 256 <blank> <blank>
9 SERGIO BILL 5 509 370 <blank> <blank> <blank> <blank>
10 SERGIO BILL 5 <blank> <blank> 500 500 <blank> <blank>
这是我的查询
select
u.nombre,
m.codigo_barras::text as "id_maquina",
(select v1.entrada from tb_visita v1 where date_trunc('day',v1.fecha_visita) = '2017-06-08 05:37:43.559'::date - integer '6' and v1.id_visita = v.id_visita) as "vie. 2 de junio",
(select v1.entrada from tb_visita v1 where date_trunc('day',v1.fecha_visita) = '2017-06-08 05:37:43.559'::date - integer '5' and v1.id_visita = v.id_visita) as "sáb. 3 de junio",
(select v1.entrada from tb_visita v1 where date_trunc('day',v1.fecha_visita) = '2017-06-08 05:37:43.559'::date - integer '4' and v1.id_visita = v.id_visita) as "dom. 4 de junio",
from tb_visita v
INNER JOIN tb_maquinas m ON m.id_maquina = v.id_maquina
inner join tb_usuarios u on u.id = v.id_usuario
where date_trunc('day',v.fecha_visita) >= '2017-06-08 05:37:43.559'::date - integer '6' and date_trunc('day',v.fecha_visita) <= '2017-06-08 05:37:43.559'::date
order by u.nombre ASC, t.nombre_contacto ASC ;
正如你所看到的,我的细节是有重复的行可以分组在同一行中,而不是在不同的日子,实际上我正在阅读this,我会看到是否可以清除我的想法并帮我解决这个问题。
我认为没有必要放置表格结构,但如果需要我会更新。