Frage

Ich habe eine Tabelle für Blogeinträge und eine Tabelle für Variablen mit einer many-to-many-Beziehung zwischen ihnen.

Wie kann ich extrahieren Sie die am häufigsten Tag über eine Untergruppe von Blogeinträge? (Zum Beispiel nur diejenigen aus dem vergangenen Jahr) Gibt es eine Möglichkeit, die Frequenzen aller Tags mit den Blogeinträgen Teilmenge?

assoziiert zu extrahieren

Danke

Edit: mein Schema:

CREATE TABLE `tag` (
    `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
    `name` varchar(200) NOT NULL,
    `access` varchar(1),
    `linked_created` datetime
)
;

CREATE TABLE `blogpost_tags` (
    `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
    `blogpost_id` integer NOT NULL,
    `tag_id` integer NOT NULL,
    UNIQUE (`blogpost_id`, `tag_id`)
)
;

CREATE TABLE `blogpost` (
    `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
    `title` varchar(50),
    `body` varchar(500)
)
;
War es hilfreich?

Lösung

(Nun, da Schema zur Verfügung gestellt hat, entfernt mein Beispielschema und nur die Abfrage geschrieben)

Select T.name, Count(*) As UseCount
From Tag As T
    Join BlogPost_Tag As BPT
        On BPT.tag_Id = T.Id
    Join BlogPost As BP
        On BP.Id = BPT.blogpost_id
Where BP.Title Like '...'
Group By T.name
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top