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

RE:Numero semana T-SQL

Publicado por Isaias (3186 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

RE:Numero semana T-SQL

Publicado por Isaias (3186 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

RE:Numero semana T-SQL

Publicado por Isaias (3186 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