¿Cómo se selecciona una columna de fecha y hora por mes?MS SQL selecciona una fecha por mes?
TABLE A
TITLE MY_DATETIME
blah 2011-03-26 05:44:43.213
SELECT *
FROM TABLE A
WHERE MY_DATETIME = "August"
¿Cómo se selecciona una columna de fecha y hora por mes?MS SQL selecciona una fecha por mes?
TABLE A
TITLE MY_DATETIME
blah 2011-03-26 05:44:43.213
SELECT *
FROM TABLE A
WHERE MY_DATETIME = "August"
SELECT *
FROM TABLE A
WHERE DATEPART(month, MY_DATETIME) = 8
o, menos fiable based on language ajuste:
...
WHERE DATENAME(month, MY_DATETIME) = 'August'
Tal vez, no hay una solución mejor para el problema tal como está configurado, pero esta es la forma correcta de Index Scan. –
@Igor: los requisitos para el mes solo significan que una verificación de rango en la fecha no es factible. Podría ser una pregunta pobre aunque – gbn
SELECT *
FROM TABLE A
WHERE DATENAME(MONTH, MY_DATETIME) = 'August'
Esto se rompe en algunos casos extraños: http://stackoverflow.com/a/1500018/27535 – gbn
utilizo EXTRACT
función en lugar de DATEPART
. DATEPART
función no existe en mi mysql.
'WHERE month (MY_DATETIME) = 8' – Raihan
@MGA: existe en SQL Server 2008. Ref: http://msdn.microsoft.com/en-us/library/ms187813.aspx – Raihan
@MGA: ¿en serio? He estado allí para siempre http://msdn.microsoft.com/en-us/library/ms187813.aspx y http://msdn.microsoft.com/en-us/library/aa933239(SQL.80).aspx – gbn