SQL Server - Numero semana T-SQL

 
Vista:

Numero semana T-SQL

Publicado por Miguel (7 intervenciones) el 10/12/2009 11:20:32
Intento obtener el numero de semana al que pertenece una fecha determinada trabajando con SQL Server 2000 y no consigo que me de el resultado correcto.

Ejp: DATEPART(wd, '2010-01-01') ---> El resultado es semana "1" pero claro según la norma ISO 8601 este día tiene que ser seman "53".
DATEPART(wd, '2010-01-04') ---> El resultado es semana "2" cuando según la norma ISO 8601 tendría que ser semana 1.

¿Como puedo poner solución a este problema? Muchas gracias por vuestra ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

RE:Numero semana T-SQL

Publicado por Isaias (4558 intervenciones) el 10/12/2009 18:16:40
Veamos

el parametro es DW y no "wd"

Segun ISO 8601, la interpretacion de los datos es YYYY-MM-DD

¿Es correcto?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero semana T-SQL

Publicado por Miguel (7 intervenciones) el 11/12/2009 09:23:21
Muchas gracias por contestar.

Perdona por el error en el wd, a lo que me refería es:

DATEPART(wk, '2010-01-01') esto en SQL 2000 me está devolviendo "1" cuando según la Norma ISO 8601 tendría que ser semana 53. La norma dice que la semana 1 del año es en la que se encuentra el primer jueves de dicho año. En el caso del 2010 el primer jueves es el día 7 de tal forma que la semana 1 es la comprendida entre el 04/01/2010 y 10/01/2010. Y si ejecuto la función
DATEPART(wk, '2010-01-04') el resultado es '2'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

RE:Numero semana T-SQL

Publicado por Isaias (4558 intervenciones) el 12/12/2009 00:37:52
A ver...

DATEPART(wk, '2010-01-01')

Eso esta en la PRIMERA SEMANA, es el PRIMERO DE ENERO, ¿De donde sacas que debe darte la semana 53?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero semana T-SQL

Publicado por MIGUEL (1 intervención) el 14/12/2009 09:15:44
Si miras lo que dice la norma ISO 8601 dice que la semana 1 de un año corresponde a la semana que contiene el primer jueves de ese año.

Adjunto enlace a la Wikipedia: en el apartado "Fecha semanal"

http://es.wikipedia.org/wiki/ISO_8601
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de roger

RE:Numero semana T-SQL

Publicado por roger (173 intervenciones) el 14/12/2009 15:22:37
creo que esto te puede servir
http://support.microsoft.com/default.aspx/kb/200299/es
, me parece que hace referencia a este inconveniente tanto en funciones de Vb como al datepart de sql
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero semana T-SQL

Publicado por miguel (7 intervenciones) el 14/12/2009 17:16:41
Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

RE:Numero semana T-SQL

Publicado por Isaias (4558 intervenciones) el 14/12/2009 20:07:46
Gracias Roger, me has hecho ver que aun tengo la capacidad de seguir aprendiendo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Ariagna
Val: 5
Ha aumentado su posición en 14 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

RE:Numero semana T-SQL

Publicado por Ariagna (12 intervenciones) el 06/10/2020 18:08:11
El link ya no esta disponible:( podrían apoyarme con como lo solventaron, tengo el mismo problema
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

RE:Numero semana T-SQL

Publicado por Isaias (4558 intervenciones) el 06/10/2020 19:20:25
Prueba con este codigo

1
SELECT DATEPART(ISO_WEEK, Getdate()) as NumSemana
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

RE:Numero semana T-SQL

Publicado por moises (1 intervención) el 07/12/2022 21:56:24
no usen el intervalo week , por que tiene su complicacion
NUMERO DE SEMANA INCORRECTO EN ALGUNOS AÑOS
DatePart(WEEK,'FECHA')

NUERO DE SEMANA CORRECTO
DatePart(ISO_WEEK,@StartDate)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar