SELECT mit Datum
dsoltau
- datenbank
Hallo!
Ich habe schon die Suche geqäult, bin aber nicht fündig geworden. Hinzu kommt das ich in Sachen SQL absoluter Neuling bin.
Ich habe jetzt folgendes Problem:
Ich habe eine Tabelle in der ich alle Einträge aus dem Jahr 2006 zählen will. Die entsprechende Spalte heißt Datum
und das Datum ist nach folgendem String aufgebaut: YYYY-MM-DD, z.B. 2006-06-03.
Kann mir da jemand helfen? Ich habe schon 1000 Varianten von SELECT COUNT(*) probiert, entweder zählt er 0 an alle Einträge.
Gruß,
Dennis
Hallo.
Ich habe eine Tabelle in der ich alle Einträge aus dem Jahr 2006 zählen will. Die entsprechende Spalte heißt
Datum
und das Datum ist nach folgendem String aufgebaut: YYYY-MM-DD, z.B. 2006-06-03.
Normalerweise müsste SELECT count(*) FROM Tabelle WHERE left(Datum, 4) = '2006' funktionieren.
Falls nicht wären die folgenden Informationen hilfreich:
Viele Grüße,
Thomas
hi,
das Datum ist nach folgendem String aufgebaut: YYYY-MM-DD, z.B. 2006-06-03.
D.h., der Spaltentyp ist einer der Datumstypen des Datenbanksystems (MySQL)?
Normalerweise müsste SELECT count(*) FROM Tabelle WHERE left(Datum, 4) = '2006' funktionieren.
Oder auch WHERE YEAR(datum) = '2006'
gruß,
wahsaga
echo $begrüßung;
Ich habe eine Tabelle in der ich alle Einträge aus dem Jahr 2006 zählen will. Die entsprechende Spalte heißt
Datum
und das Datum ist nach folgendem String aufgebaut: YYYY-MM-DD, z.B. 2006-06-03.Normalerweise müsste SELECT count(*) FROM Tabelle WHERE left(Datum, 4) = '2006' funktionieren.
Wenn Datum ein String ist, sollte das mit LEFT() funktionieren. Ist es ein Datums/Zeit-Typ könnte es durch eine automatische Typumwandlung auch funktionieren, muss aber nicht. Ganz sicher sollte jedoch mit der Funktion YEAR() hinzubekommen sein.
echo "$verabschiedung $name";
Moin!
Ganz große Klasse! Hat wunderbar funktioniert! Danke!
Dennis
Wenn du immer das Jahr 2006 überprüfen willst, dann geht es auch so ganz einfach:
SELECT *
FROM tabelle
WHERE datum
BETWEEN '2006-01-01' AND '2006-12-31'