Ich versuche, die Summe der einzelnen Spalte zu erhalten. Ich habe ein Schema von Bestellungen mit dem Feld total, das den Gesamtpreis speichert. Jetzt versuche ich eine Abfrage zu erstellen, die den Gesamtwert aller Bestellungen summiert, aber nicht sicher, ob ich es richtig mache. Hier ist das, was ich bisher:Elixir/Phoenix Summe der Spalte
def create(conn, %{"statistic" => %{"date_from" => %{"day" => day_from, "month" => month_from, "year" => year_from}}}) do
date_from = Ecto.DateTime.cast!({{year_from, month_from, day_from}, {0, 0, 0, 0}})
revenue = Repo.all(from p in Order, where: p.inserted_at >= ^date_from, select: sum(p.total))
render(conn, "result.html", revenue: revenue)
end
Und es wie <%= @revenue %>
im html.eex aufrufen. Ab sofort gibt es keine Fehler zurück, sondern nur zufällige Symbol auf der Seite, anstelle der Gesamteinnahmen.
Ich denke, meine Abfrage ist falsch, konnte aber keine guten Informationen darüber finden, wie es richtig funktioniert. Jede Hilfe geschätzt, danke!
Welche Version von Ecto verwenden Sie? – Gazler
Versuchen Sie 'Repo.one' anstelle von' Repo.all'. – Dogbert
@Dogbert verdammt, kann nicht glauben, dass ich diesen Fehler gemacht habe, danke! – Ilya