sql >> Databasteknik >  >> RDS >> PostgreSQL

Gå med 3 eller fler bord i Laravel 8

Du kan lösa det på ett enklare sätt:

select ts recordtime, max(to1) tempout, max(to2) tempoutstamb, max(to3) tempoutstamb2
from (
  select ts, tempout to1, cast (null as numeric(10,1)) to2, cast (null as numeric(10,1)) to3
  from table1
union all 
  select ts, null, tempout, null
  from table2
union all
  select ts, null, null, tempout
  from table3
) tt
group by ts
order by ts; 

Du hittar den i fiol https://www.db-fiddle.com/f /eJsPZijRnQFGXugLGHnn93/0

OBS:Jag har antagit att nollvärden som visas som '-' bara är utdataformatering. Om så inte är fallet kan utdata med NULL konverteras till '-'.

OBS 2:Jag vet inte hur man konverterar till Laravel/PHP-kod, förhoppningsvis skulle du ha en bättre idé.



  1. Hur räknar man alla poster men bara hämtar (LIMIT) ett specifikt nummer för visning?

  2. Hur CONV() fungerar i MariaDB

  3. Kan du inte skapa anslutning till GlassFish-databasen med Netbeans?

  4. Hur man gör en räkningsfråga baserad på en dag i oracle sql