2017-02-09 6 views
-1

Ich habe 2 Spalten eines mit Monat und ein weiteres Jahr, möchte ich alle Datensätze bekommen mehr als diesen Monat und Jahrkonvertieren integer bisher in MySQL, PHP

Ich kann nicht Datumsfunktionen verwenden, da diese Spalten von integer sind Typ, gibt es falsche Ergebnisse

Wie kann ich Aufzeichnungen von mehr als dieser Monat und Jahr

Zum Beispiel Wie kann ich Ereignisse erhalten, die erst nach 2017 Februar nahm

+1

Was Sie früher versucht haben? –

+0

http://stackoverflow.com/questions/20617100/php-converting-integt-to-date-reverse-of-strtotime – fizzi

+0

Wäre besser, wenn Sie Ihren Code –

Antwort

3

Was ist mit diesem Ansatz:

SELECT * FROM table WHERE CONCAT(year, month) > 201702 
-1

WHERE CONCAT(year, month) > 201702

wahrscheinlich haben Sie auch einige PHP-Code innerhalb so:

$date = strtotime('2018-01-01 01:01:01'); 
$sql = 'SELECT * FROM YOUR_TABLE 
      WHERE CONCAT(year, month) > ' . date('Ym', $date); 
+0

Und was ist, wenn das Datum zum Beispiel Januar 2018 ist? –

+0

Du hast das nicht richtig verstanden - wenn ich alles mit Datum größer als 02/2017 haben will, aber in der DB ist Datensatz mit dem Monat 01, Jahr 2018. Dein Code wird es nicht auswählen ... –

-1
SELECT * FROM events WHERE CONCAT(year,month) >= 201702 

oder ohne CONCAT

SELECT * FROM events WHERE(month > 2 AND year =2017) OR (year > 2017) 
+0

Und was ist wenn das Datum im DB-Record ist zum Beispiel Monat 01, Jahr 2018? –