Fecha entre otras 2 fechas, sin considerar el año.
Estoy buscando algo como la personaaquí Estaba buscando, solo me gustaría usar MySQL. La tabla a continuación es algo que encontraría en mi base de datos (simplificada).
+------+------+------+------+
| id | name | first| last |
+------+------+------+------+
| 1 | John | 1020 | 0814 |
| 2 | Ram | 0827 | 0420 |
| 3 | Jack | 0506 | 0120 |
| 4 | Jill | 0405 | 0220 |
| 5 | Zara | 1201 | 1219 |
+------+------+------+------+
En primer lugar, la entrada debe ser aleatoria, no id 4 y solo quiero 1 entrada. Eso lo resolví:SELECT * FROM test WHERE id <> 4 ORDER BY rand() LIMIT 1
.
En esta tabla, las columnas 'primera' y 'última' tienen fechas formateadas como mmdd (ambos enteros). Así que John está disponible la mayor parte del año; Del 20 de octubre al 14 de agosto. Zara, por otro lado, solo está disponible por un pequeño período de tiempo; 1 de diciembre hasta el 19 de diciembre.
Mi pregunta: ¿cómo cambio mi consulta para seleccionar solo las personas disponibles? No puedo usar 'entre' ya que, en el caso de John, no hay nada entre 1020 y 0814.
Simplemente no puedo entenderlo, debe haber otras personas que tengan un problema similar ... ¿Alguien tiene una solución?
Saludos cordiales