Ich verwende Laravel Livewire PowerGrid, um aggregierte Daten pro Monat aus meiner Ereignistabelle (PostgreSQL) anzuzeigen.
Ich möchte monatliche Summen berechnen:
SQLSTATE[42803]: Grouping error: 7 ERROR: column "events.id" must appear in the GROUP BY clause or be used in an aggregate function LINE 1: ... 'YYYY-MM') order by to_char(date, 'YYYY-MM') DESC, "id" asc ^ (Connection: pgsql, SQL: select count(*) as aggregate from "events" where "date" is not null group by to_char(date, 'YYYY-MM') order by to_char(date, 'YYYY-MM') DESC, "id" asc)
Gibt es bessere Alternativen? zu PowerGrid für die Anzeige aggregierter Daten mit Laravel Livewire, insbesondere beim Umgang mit PostgreSQL und monatlichen Zusammenfassungen?
Gilt es im Allgemeinen als gute Praxis, Daten spontan auf diese Weise in der Datenquelle zu aggregieren, oder sollte ich aus Gründen der Leistung und Zuverlässigkeit eine VIEW oder MATERIALIZED VIEW verwenden?
Ich verwende [b]Laravel Livewire PowerGrid[/b], um aggregierte Daten pro Monat aus meiner Ereignistabelle (PostgreSQL) anzuzeigen. Ich möchte monatliche Summen berechnen: [code] public function datasource(): Builder { return DB::table('events') ->whereNotNull('date') ->selectRaw(" MIN(id) as id, to_char(date, 'YYYY-MM') as month_key, ROUND(SUM(COALESCE(total_cost, 0))::numeric, 2) as total_cost_sum, ROUND(SUM(COALESCE(implementation_1c, 0))::numeric, 2) as implementation_sum ") ->groupByRaw("to_char(date, 'YYYY-MM')") ->orderByRaw("to_char(date, 'YYYY-MM') DESC"); } [/code] In meiner PowerGrid-Komponente habe ich Folgendes festgelegt: [code]public string $primaryKey = 'month_key'; [/code] Und ich definiere die Spalten über transform() und Fields(). Beim Laden der Tabelle erhalte ich diesen PostgreSQL-Fehler: [code]SQLSTATE[42803]: Grouping error: 7 ERROR: column "events.id" must appear in the GROUP BY clause or be used in an aggregate function LINE 1: ... 'YYYY-MM') order by to_char(date, 'YYYY-MM') DESC, "id" asc ^ (Connection: pgsql, SQL: select count(*) as aggregate from "events" where "date" is not null group by to_char(date, 'YYYY-MM') order by to_char(date, 'YYYY-MM') DESC, "id" asc) [/code] Was ich versucht habe: [list] [*]MIN(id) als ID hinzugefügt
[/list] Fragen: [list] [*]Gibt es bessere Alternativen? zu PowerGrid für die Anzeige aggregierter Daten mit Laravel Livewire, insbesondere beim Umgang mit PostgreSQL und monatlichen Zusammenfassungen?
[*]Gilt es im Allgemeinen als gute Praxis, Daten spontan auf diese Weise in der Datenquelle zu aggregieren, oder sollte ich aus Gründen der Leistung und Zuverlässigkeit eine VIEW oder MATERIALIZED VIEW verwenden?
[/list] Vollständiger Code: [code]final class EventsMonthlyTable extends PowerGridComponent { public string $tableName = 'events-monthly-table';
public string $primaryKey = 'month_key';
public function setUp(): array { return [ PowerGrid::header() ->showSearchInput(),
Ich verwende Laravel Livewire PowerGrid , um aggregierte Daten pro Monat aus meiner Ereignistabelle (PostgreSQL) anzuzeigen.
Ich möchte monatliche Summen berechnen:
public function datasource():...
Ich verwende Laravel Livewire PowerGrid , um aggregierte Daten pro Monat aus meiner Ereignistabelle (PostgreSQL) anzuzeigen.
Ich möchte monatliche Summen berechnen:
public function datasource():...
Ich habe ein Problem mit MongoDB mit CodeIgnitor 3 hinsichtlich der Gruppierung von Datensätzen nach dem Datumswert einer Spalte, die einen Datums-/Uhrzeitwert enthält.
Wenn ich die Mongo-Abfrage...
Ich habe zwei Tabellen, die wie folgt definiert sind:
Eine Kleinanzeige wird von einem Benutzer erstellt und in dieser Tabelle gespeichert:
CREATE TABLE `classifieds` (
`ClassifiedAdID` mediumint...
Ich möchte die höchsten Bildungsdetails des Benutzers in absteigender Reihenfolge anstelle aller Bildungsdetails erhalten, also verbinde ich die Benutzertabelle mit der Bildungsdetailtabelle, frage...