Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

[SOLUCIONADO] Convert fecha a bigint SQL Server 2016

Estas en el tema de Convert fecha a bigint SQL Server 2016 en el foro de Bases de Datos General en Foros del Web. Hola a todos tengo la siguiente fecha '04/12/2017 13:22' y necesito convertirlo en un bigint. No se exactamente como lo hace, pues buscando por internet ...
  #1 (permalink)  
Antiguo 04/12/2017, 10:57
 
Fecha de Ingreso: julio-2008
Mensajes: 155
Antigüedad: 15 años, 8 meses
Puntos: 1
Exclamación Convert fecha a bigint SQL Server 2016

Hola a todos tengo la siguiente fecha
'04/12/2017 13:22' y necesito convertirlo en un bigint.

No se exactamente como lo hace, pues buscando por internet lo que hacen es un replace a la cadena dejandolo asi 041220171322 o algo asi

El resultado es este: 1512390131427 es lo que guarda en la base de datos.

Tengo las siguientes consultas
declare @dataActual dateTime;
declare @DataSLA dateTime;
select @DataSLA = DATEADD(HOUR, 1, DATEADD(S ,'04/12/2017 13:22:00'/1000, '1-1-1970 00:00:00')) from workorder where WORKORDERID = 1543; --Formato dateTime
select cast(@DataSLA as bigint)

select @DataSLA -- 43072

No encuentro el error.
¿Alguna sugerencia?
Gracias.
  #2 (permalink)  
Antiguo 04/12/2017, 11:07
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Convert fecha a bigint SQL Server 2016

Si yo intento ejecutar su query

Código SQL:
Ver original
  1. DECLARE @dataActual dateTime;
  2. DECLARE @DataSLA dateTime;
  3. SELECT @DataSLA = DATEADD(HOUR, 1, DATEADD(S ,'04/12/2017 13:22:00'/1000, '1-1-1970 00:00:00'))
  4. SELECT CAST(@DataSLA AS BIGINT)

El error que se recibe es por la conversion implicita que se desea realizar

Msg 245, Level 16, State 1, Line 3
Conversion failed when converting the varchar value '04/12/2017 13:22:00' to data type int.

¿Porque desea convertir una fecha a BIGINT?, ¿cual es el objetivo?
__________________
MCTS Isaias Islas
  #3 (permalink)  
Antiguo 04/12/2017, 12:44
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Convert fecha a bigint SQL Server 2016

la misma pregunta, como para que????
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #4 (permalink)  
Antiguo 04/12/2017, 13:45
 
Fecha de Ingreso: julio-2008
Mensajes: 155
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Convert fecha a bigint SQL Server 2016

Estoy utilizando ServiDesk plus y necesito hacer un trigger,
En la base de datos el campo donde guarda la fecha es un bigint (desconozco el porqué).
Sus motivos tendrán. No puedo cambiar el tipo de dato del campo, ya que sino la plataforma dejaria de funcionar.
Necesito recoger la fecha y sumarle 2 horas, y al resultado convertirlo en bigint y hacer un update a la base de datos. El tema de las 2 horas es por el tema del SLA (Requisitos del cliente).
En el código no está puesto la suma de dos horas.
Sería algo como esto
SELECT @DataSLA = DATEADD(HOUR, 3, DATEADD(S ,'04/12/2017 13:22:00'/1000, '1-1-1970 00:00:00'))

Espero haber aclarado las dudas.
Gracias,
  #5 (permalink)  
Antiguo 05/12/2017, 09:39
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Convert fecha a bigint SQL Server 2016

Aqui la respuesta:

Código SQL:
Ver original
  1. DECLARE @TIME CHAR(23)
  2. DECLARE @DATE CHAR(23)
  3. DECLARE @completa CHAR(200)
  4. DECLARE @mybigint BIGINT
  5.  
  6. SET @TIME=REPLACE(CONVERT(VARCHAR(8), dateadd(hh,2,getdate()), 8),':','')
  7. SET @DATE=REPLACE(CONVERT(CHAR(23),getdate(),101),'/','')
  8. SET @completa=ltrim(rtrim(@DATE)) + ltrim(rtrim(@TIME))
  9. SET @mybigint=CONVERT(BIGINT,@completa)
  10. print @mybigint

Resultado:
12052017135619--Agregando las 2 horas
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: convert, fecha, server, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:40.