Hallo, ich versuche SQL zu lernen und arbeite an einer kleinen Übung. Ich möchte alle IDs aus einer Tabelle zurückzugeben, die ein Datum nach 2014 Heres, was ich habe:Probleme mit der Rückgabe eines Datums nach 2014
CREATE TABLE Pick_Up(
eid INT,
pid INT,
cid int,
datetime DATETIME,
);
INSERT INTO Pick_Up (eid, pid, datetime)
VALUES (3, 7,'2015/4/23 16:35:05'),
(4, 6,'2016/3/20/ 9:05:45');
SELECT P.pid
FROM pick_up P
WHERE year(p.datetime)> '2014';
Und ich dachte, es würde beide Tupel zurück, aber wenn ich es benutze ich nichts. Wenn jemand mir helfen könnte, indem er mir sagt, was ich tun kann, um beide Werte zurückzubekommen, wäre das unglaublich toll!
Die Beispieldaten Sie auf dem Laufenden enthält Fehler in Datetime-Daten. Zweitens glaube ich, dass die year() -Funktion das ganzzahlige Ergebnis liefert, also sollten Sie die Zitate um 2014 in der 'where'-Bedingung loswerden. – Harsh
Ihre Abfrage funktioniert für mich, wenn ich 'p.datetime' in' P.datetime' ändere. Sonst bekomme ich einen Fehler. – Barmar
@Barmar Was? Sie haben eine Case-Sensitive-Implementierung von MySQL ??? – Strawberry