Guardo las fechas en mi base de datos en una columna del tipo de datos date
.
Digamos que tengo la columna date
donde almaceno los datos como este "2011-01-01", "2012-01-01", "2012-02-02", etc.
Ahora tengo que hacer SQL que selecciona sólo las filas donde date
es igual a 2012
SELECT * FROM table WHERE date=hasSomehowYearEqualTo=2012
¿Cuál sería la consulta como?
gran punto acerca de los cálculos. También puede hacer 'WHERE \' date \ 'LIKE '$ year -%''. – ceejayoz
@ceejayoz ¡Esto es igual de malo! crea la representación de cadena para todas las fechas, sin índice utilizado ... si puede elegir entre un cálculo en una constante y un cálculo en un campo, utilice el primero. LIKE es un cálculo en el campo! –
Esta es definitivamente la mejor solución. Especialmente si tiene indexación en la fecha. –