Ich habe hier eine Frage gestellt: /programming/43807566/how-to-divide-two-values-from-the-same-column-but-at-different-rows
Informationen zum Teilen von Werten aus derselben Tabelle in derselben Spalte, jedoch in verschiedenen Zeilen. Jetzt habe ich das Problem, wo ich mehr Zähler und Nenner (mit unterschiedlichen uns) habe. Ist dies immer noch self joinein guter Weg, um dieses Problem mit Postgres zu lösen, oder gibt es bessere Lösungen?
Beispiel:
| postcode | value | uns |
|----------|-------|-----|
| AA | 40 | 53 |
| BB | 20 | 53 |
| AA | 10 | 54 |
| AA | 20 | 55 |
| AA | 10 | 56 |
| AA | 30 | 57 |
| AA | 50 | 58 |
| BB | 10 | 54 |
| BB | 10 | 55 |
| BB | 70 | 56 |
| BB | 80 | 57 |
| BB | 10 | 58 |
Ergebnis sollte sein:
| postcode | formula |
|----------|------------|
| AA | 18.888... |
| BB | 14.375 |
Wo die Werte nach Postleitzahl gruppiert sind und die Formel lautet (Wert mit uns):
(V53 * V56 + V54 * V57 + V55 * V58) / (V56 + V57 + V58)
Achten Sie darauf, eine eventuelle Division durch Null zu vermeiden. Die Formel kann noch komplexer sein, aber das ist ein gutes Beispiel.
unszu Spaltennamen werden - von dort aus sollte jede Formel, die die Werte verwendet, funktionsfähig werden. Wird die Formel fest codiert oder irgendwie dynamisch abgeleitet?