Ich habe Tabelle Kunden:Ausgangsdaten ab dem Zeitpunkt der Aktivierung von mehr als einem Jahr
CREATE TABLE clients (
id INT AUTO_INCREMENT NOT NULL,
tariff VARCHAR(255) NOT NULL NULL,
validity VARCHAR(255) NOT NULL,
phoneNumber VARCHAR(255) NOT NULL ,
PRIMARY KEY(id)
) ENGINE=InnoDB CHARACTER SET=UTF8;
INSERT INTO clients (id,tariff,validity,phoneNumber) VALUES (1,"tariff1","10-02-2015","380938474271");
INSERT INTO clients (id,tariff,validity,phoneNumber) VALUES (2,"tariff1","10-02-2016","380938474272");
INSERT INTO clients (id,tariff,validity,phoneNumber) VALUES (3,"tariff2","12-01-2017","380938474273");
INSERT INTO clients (id,tariff,validity,phoneNumber) VALUES (4,"tariff3","10-01-2017","380938474274");
INSERT INTO clients (id,tariff,validity,phoneNumber) VALUES (5,"tariff3","11-02-2017","380938474275");
Mein Feld Gültigkeit ist ein Datum der Aktivierung. Wie kann ich aus dieser Tabelle ein Feld mit Aktivierungsdatum von mehr als einem Jahr auswählen? Beispielsweise ist es für diese Tabelle werden die Kunden mit der ID 1 und 2
Warum speichern Daten in einer varchar Säule? Hat MySQL keinen richtigen Datumsdatentyp? – jarlh
Speichern Sie keine Daten als 'varchar' und verwenden Sie kein funky Format von' mm-dd-yyyy', da dies später nur Probleme verursachen kann. –
ok. Ich verwende das Datetime-Format. Ich versuche es: SELECT * FROM 'clients' WO (activation_date> = NOW() UND activation_date <= NOW() + INTERVALL 365 DAY) Aber es funktioniert nicht –