Hola de nuevo dos_olivos dos cosas:
primero, para obtener sólo la fecha con la hora en cero, basta con que quites la concatenación de la hora en la respuesta que de dí, creo que te sirve perfectamente para lo que necesitas y sólo utilizas una función SUBSTRING en lugar de LEFT Y STUFF:
Código SQL:
Ver originalDECLARE @fecha VARCHAR(30)
SET @fecha = '20110103232219'
SELECT CONVERT(DATETIME, SUBSTRING(@fecha, 1,8)) AS fecha
el resultado de esto sería:
Código:
fecha
-----------------
2011-01-03 00:00:00.000
Ahora bien, con respecto al segundo tema, no entendí muy bien qué es lo que necesitas, pero creo que tienes convertir una cadena "23.01.2010" a datetime, esto lo puedes hacer así:
Código SQL:
Ver originalDECLARE @fecha VARCHAR(15)
SET @fecha = '23.01.2010'
SELECT CONVERT(DATETIME, REPLACE(@fecha, '.', '/'), 103) AS fecha
el resultado de esto sería:
Código:
fecha
-----------------
2011-01-23 00:00:00.000
Saludos
Leo