Ich habe 2 Tabellen, mit einem inneren Join, um sie abzufragen.MySQL Hilfe: SELECT table2.id WHERE ... table1.date ist am größten
SELECT COUNT(table2.id)
FROM table2
INNER JOIN table1 ON table2.relazioneid = table1.id
WHERE table1.date > ? AND table1.date < ?
Es zählt die IDs der Einträge in Berichten zwischen 2 Daten. Tabelle 1 enthält Informationen zu den Berichten (Datum, Gruppennummer usw.), Tabelle 2 enthält die Einträge zu den Berichten.
Ich möchte eine Abfrage fast genau die gleiche machen, außer es wählt nur die IDs aus dem Bericht mit dem spätesten Datum, zwischen diesen 2 Daten.
Kann jemand helfen? Ich kann MAX-Abfragen (Datum) einfach nicht verstehen - alles, was ich zurückbekomme, ist eine Zählung jeder ID und auch des maximalen Datums, und nicht nur die IDs vom maximalen Datum.
Danke,
Ich habe vielleicht eine verschachtelte SQL-Abfrage zu denken - können Sie das tun? Ich kann Referenzen auf Google finden, aber es kann nicht an der Arbeit ... Etwas Ähnliches:
SELECT COUNT(table2.id)
FROM table2
INNER JOIN table1 ON table2.relazioneid = table1.id
WHERE table1.date > ? AND table1.date < ? AND
(
SELECT MAX(date)
FROM table1
WHERE date > ? AND date < ?
)
Kann nicht, dass, obwohl an der Arbeit, und wenn ich versuche, es in phpMyAdmin zu testen, es schlägt Ich habe einen Fehler mit der Fehlermeldung, dass mein Benutzer keine SELECT-Rechte hat. Seltsam, da dies ein Testserver ist, bei dem ich als root angemeldet bin.
Können Sie die Struktur der beiden Tabellen geben und genau, welche Informationen Sie möchten von beiden Tabellen abrufen? Dies wird die Bereitstellung eines gültigen Beispielcodes erheblich vereinfachen. –