una semestre operaciones obtener nombre mes hora fechas fecha digitos con año sql sql-server-2008 type-conversion

operaciones - obtener semestre sql server



Devolver el nombre del mes en la consulta de SQL Server (10)

Utilizando SQL Server 2008 , tengo una consulta que se utiliza para crear una vista y estoy tratando de mostrar el nombre de un mes en lugar de un número entero.

En mi base de datos, datetime está en una columna llamada OrderDateTime . Las líneas en la consulta que devuelve la fecha son:

DATENAME(yyyy, S0.OrderDateTime) AS OrderYear, DATEPART(MONTH, S0.OrderDateTime) AS OrderMonth

Esto devuelve una columna de años y una columna de meses como enteros. Quiero devolver los nombres de los meses (Jan, Feb, etc ). He intentado:

CONVERT(varchar(3), DATEPART(MONTH, S0.OrderDateTime) AS OrderMonth

Obviamente, esto es incorrecto, ya que

Sintaxis incorrecta cerca de ''AS''

mensaje. ¿Cuál es la sintaxis adecuada para mi consulta?


¿Has probado DATENAME(MONTH, S0.OrderDateTime) ?


Básicamente esto ...

declare @currentdate datetime = getdate() select left(datename(month,DATEADD(MONTH, -1, GETDATE())),3) union all select left(datename(month,(DATEADD(MONTH, -2, GETDATE()))),3) union all select left(datename(month,(DATEADD(MONTH, -3, GETDATE()))),3)


Cambio:

CONVERT(varchar(3), DATEPART(MONTH, S0.OrderDateTime) AS OrderMonth

A:

CONVERT(varchar(3), DATENAME(MONTH, S0.OrderDateTime)) AS OrderMonth


En SQL Server 2012, es posible usar FORMAT(@mydate, ''MMMM'') AS MonthName


Esto le dará el nombre completo del mes.

select datename(month, S0.OrderDateTime)

Si solo quieres las primeras tres letras puedes usar esto

select convert(char(3), S0.OrderDateTime, 0)


Esto le dará lo que está solicitando:

select convert(varchar(3),datename(month, S0.OrderDateTime))


Prueba esto:

SELECT LEFT(DATENAME(MONTH,Getdate()),3)


Seleccione SUBSTRING (convert(varchar,S0.OrderDateTime,100),1,3) de su nombre de tabla


Sin presionar db podemos buscar el nombre de todos los meses.

WITH CTE_Sample1 AS ( Select 0 as MonthNumber UNION ALL select MonthNumber+1 FROM CTE_Sample1 WHERE MonthNumber+1<12 ) Select DateName( month , DateAdd( month , MonthNumber ,0 ) ) from CTE_Sample1


SELECT MONTHNAME( `col1` ) FROM `table_name`