Comment extraire le mois et la date d'une date mySQL et les comparer à une autre date?
J'ai trouvé ce MOIS () mais il n'obtient que le mois. Je cherche mois et année.
dans Mysql Doku: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_extract
SELECT EXTRACT( YEAR_MONTH FROM `date` )
FROM `Table` WHERE Condition = 'Condition';
Si vous comparez des dates, extrayez la date complète pour la comparaison. Si vous comparez uniquement les années et les mois, utilisez
SELECT YEAR(date) AS 'year', MONTH(date) AS 'month'
FROM Table Where Condition = 'Condition';
Bien qu'il ait été discuté dans les commentaires, il n'y a pas encore de réponse le contenant, il peut donc être facile de le manquer. DATE_FORMAT fonctionne très bien et est flexible pour gérer de nombreux modèles différents.
DATE_FORMAT(date,'%Y%m')
Pour le mettre dans une requête:
SELECT DATE_FORMAT(test_date,'%Y%m') AS date FROM test_table;
SELECT * FROM Table_name Where Month(date)='10' && YEAR(date)='2016';
Vous voudrez peut-être consulter les documents mySQL concernant les fonctions de date. http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
Il existe une fonction YEAR () tout comme il y a une fonction MONTH (). Si vous faites une comparaison, y a-t-il une raison de couper la date? Êtes-vous vraiment intéressé à ignorer les différences basées sur le jour et si c'est le cas, comment voulez-vous le faire?
Il devrait également y avoir une ANNÉE ().
En ce qui concerne la comparaison, vous pouvez comparer les dates qui sont les premiers jours de ces années et mois, ou vous pouvez convertir la paire année/mois en un nombre approprié pour la comparaison (c'est-à-dire plus grand = plus tard). (Exercice laissé au lecteur. Pour des conseils, lisez le format de date ISO.)
Ou vous pouvez utiliser plusieurs comparaisons (c'est-à-dire les années d'abord, puis les mois).