Ich habe eine Tabelle, die eine Reihe von Objekten zurückgibt. Dies ist ein kleiner Abschnitt eines Beispiels Ergebnis (in JSON):Postgresql - Reduzieren von Zeilen auf Eins, wenn eine Bedingung erfüllt ist
Abfrage:
SELECT id, starttime, endtime, duration, type FROM things
Ergebnis:
{
"id": 3,
"starttime": "2016-09-15T03:27:09",
"endtime": "2016-09-15T03:31:43",
"duration": 274,
"type": "bad"
},
{
"id": 2,
"starttime": "2016-09-15T03:26:48",
"endtime": "2016-09-15T03:27:09",
"duration": 20,
"status": "good"
},
{
"id": 1,
"starttime": "2016-09-15T03:19:46",
"endtime": "2016-09-15T03:26:48",
"duration": 422,
"status": "bad"
},
Ich versuche, etwas weniger als 30 Sekunden auszuschließen - das ist einfach genug. Allerdings muss ich auch die beiden oberen zusammen kombinieren - ihre Dauern kombiniert, die starttime
mit ID 1 starttime
und endttime
als ID 3 endtime
. Also das:
{
"starttime": "2016-09-15T03:19:46",
"endtime": "2016-09-15T03:31:43",
"duration": 696,
"status": "bad"
},
Ist das in Postgres/SQL möglich? Ich denke, ich könnte etwas in Java/C# herausfinden, aber würde es lieber in der Abfrage tun.