Der beste Weg, Daten aus SQLAlchemy basierend auf dem Datum aufzuteilen?
Posted: 04 Jan 2025, 04:40
Stellen Sie sich diese Tabelle vor:
Und in der Datenbank habe ich folgende Daten:
Ich möchte die Daten nach Datum gruppiert und nach Zeit absteigend sortiert anzeigen.
Dies ist beispielsweise nach dem neuesten Datum sortiert und zeigt innerhalb jedes Datums die Eintragsdaten sortiert nach dem neuesten Datum:
Gibt es eine Möglichkeit, in SQLAlchemy einfach Abfragen durchzuführen, um die Daten auf diese Weise herauszubekommen?
Wenn nicht und ich muss das selbst manuell aufteilen, ich habe diese Abfrage:
Wie kann ich Daten aufteilen, damit ich ganz einfach etwas tun kann wie:
Ein großes Problem beim manuellen Chunking besteht darin, dass die Daten anfangs alle technisch unbekannt sind. Müsste ich zuerst eine Abfrage durchführen, um alle eindeutigen Daten zu erhalten, und dann jedes Datum einer zweiten Abfrage unterziehen die Einträge bekommen? Das sind viele Abfragen pro Datum, die ausgeführt werden müssen, und scheinen ineffizient zu sein. Jede Hilfe willkommen!
Code: Select all
class Entries(db.Model):
__tablename__ = "entries"
id = Column(Integer, primary_key=True, autoincrement=True)
name = Column(Text)
created_time = Column(Datetime)
Code: Select all
id data created_time
---------------------------
1 entry1 2024-10-29 01:55:20
2 entry2 2024-10-29 12:44:50
3 entry3 2024-10-29 08:47:10
4 entry4 2024-12-01 14:30:19
5 entry5 2024-12-01 10:58:36
6 entry6 2024-12-05 22:15:48
Dies ist beispielsweise nach dem neuesten Datum sortiert und zeigt innerhalb jedes Datums die Eintragsdaten sortiert nach dem neuesten Datum:
Code: Select all
Dec 05 2024
entry6
Dec 01 2024
entry4
entry5
Oct 29 2024
entry2
entry3
entry1
Wenn nicht und ich muss das selbst manuell aufteilen, ich habe diese Abfrage:
Code: Select all
data = db.session.query(Entries).order_by(text("created_time DESC")).all()
Code: Select all
for date in data:
print(date.created_time)
for entry in date.entries:
print(entry.name)
print("\n")