Ich habe zwei Tabellen „Tags“ und „deal_tag“ und Tabellendefinition folgt,SQL-Abfrage erstellen mit sqlalchemy wählen und kommen Funktionen
Table('tags', metadata,
Column('id', types.Integer(), Sequence('tag_uid_seq'),
primary_key=True),
Column('name', types.String()),
)
Table('deal_tag', metadata,
Column('dealid', types.Integer(), ForeignKey('deals.id')),
Column('tagid', types.Integer(), ForeignKey
('tags.id')),
)
Ich möchte Tag-ID auszuwählen, Tag-Namen und das Transaktionszahl (Anzahl von Geschäften pro Tag). Beispielabfrage ist
SELECT tags.Name,tags.id,COUNT(deal_tag.dealid) FROM tags INNER JOIN
deal_tag ON tags.id = deal_tag.tagid GROUP BY deal_tag.tagid;
Wie erstelle ich die obige Abfrage mit sqlalchemy & Funktionen verbinden wählen?
Sie haben die .group_by (deal_tag.c.tagid) vergessen. Und dies funktioniert nicht für DBs, die den SQL-Standard einhalten. Sie müssen nach tags.c.Name und tags.c.id gruppieren, weil sie ausgewählt sind. –