Calcular tiempo de columnas SQL -- sql campo con sql-server camp Relacionados El problema

Calculate time from columns SQL


0
vote

problema

Español

HI StackOverFlow Community,

Me gustaría lograr lo siguiente:

De la columna DT (Fuente) Me gustaría hacer una nueva fila de DateTime (salida) para cada columna ST1 / T1 (Fuente)

  Source: DT                       ST1 T1     ST2    T2     ST3    T3     ST4     T4 2020-08-03 12:40:00.000  0   8000   6500   1500   8001   220    8221    7000   

Esta es la salida que me gustaría lograr.

     **Ssd:**                  **SED**               **S** 1: 2020-08-03 12:40:00.000  2020-08-03 12:40:08.000  1 2: 2020-08-03 12:40:06.500  2020-08-03 12:40:08.000  2 3: 2020-08-03 12:40:08.001  2020-08-03 12:40:08.221  3 4: 2020-08-03 12:40:08.221  2020-08-03 12:40:15.221  4   
Original en ingles

Hi Stackoverflow community,

I would like to achieve the following:

From the DT column(source) i would like to make a new datetime row(output) for each ST1/T1 column(source)

Source: DT                       ST1 T1     ST2    T2     ST3    T3     ST4     T4 2020-08-03 12:40:00.000  0   8000   6500   1500   8001   220    8221    7000 

This is the output i would like to achieve.

   **Ssd:**                  **SED**               **S** 1: 2020-08-03 12:40:00.000  2020-08-03 12:40:08.000  1 2: 2020-08-03 12:40:06.500  2020-08-03 12:40:08.000  2 3: 2020-08-03 12:40:08.001  2020-08-03 12:40:08.221  3 4: 2020-08-03 12:40:08.221  2020-08-03 12:40:15.221  4 
     
   
   

Lista de respuestas

1
 
vote

Tenga cuidado de usar _capitalize0 si realmente necesita precisión a un solo milisegundo.

  _capitalize111  

La salida está formateada como una cadena para verificar fácilmente el tiempo con milisegundos. Obviamente, normalmente usas el valor escrito en bruto.

https://rexter.com/xdd81255

 

Be careful to use datetime2 if you really need precision to a single millisecond.

select format(SSD, 'hh:mm:ss.fff'), format(SED, 'hh:mm:ss.fff'), S from T cross apply (     values     ( dateadd(millisecond, ST1, DT), dateadd(millisecond,       T1, DT), 1 ),     ( dateadd(millisecond, ST2, DT), dateadd(millisecond, ST2 + T2, DT), 2 ),     ( dateadd(millisecond, ST3, DT), dateadd(millisecond, ST3 + T3, DT), 3 ),     ( dateadd(millisecond, ST4, DT), dateadd(millisecond, ST4 + T4, DT), 4 ) ) as pvt(SSD, SED, S); 

The output is formatted as a string to easily verify time with milliseconds. Obviously you would normally use the raw typed value.

https://rextester.com/XDD81255

 
 
0
 
vote

Las operaciones de datos / tiempo son notoriamente dependientes de la base de datos. Un método es:

  _capitalize2  

Tenga en cuenta que esto escanea la tabla cuatro veces. Hay métodos más eficientes, pero el mejor método depende de la base de datos.

 

Data/time operations are notoriously database dependent. One method is:

select dt + st1 * interval '1 millisecond', dt + t1* interval '1 millisecond' from t union all select dt + st2 * interval '1 millisecond', dt + t2 * interval '1 millisecond' from t union all select dt + st3 * interval '1 millisecond', dt + t3 * interval '1 millisecond' from t union all select dt + st4 * interval '1 millisecond', dt + t4 * interval '1 millisecond' from t; 

Note that this scans the table four times. There are more efficient methods, but the best method depends on the database.

 
 

Relacionados problema

14  Collación del cliente y SQL Server 2005  ( Client collation and sql server 2005 ) 
Estamos actualizando un programa existente de Win2k/SQL Server 2k a Windows 2003 and SQL Server 2005 , así como la compra de un nuevo programa que también ...

30  Desplegando bases de datos de SQL Server de la prueba para vivir  ( Deploying sql server databases from test to live ) 
Me pregunto cómo ustedes administran la implementación de una base de datos entre 2 servidores SQL, específicamente SQL Server 2005. Ahora, hay un desarrollo ...

30  Edición de registros de bases de datos por múltiples usuarios  ( Editing database records by multiple users ) 
He diseñado tablas de base de datos (normalizada, en un servidor MS SQL) y creó un extremo frontal independiente de Windows para una aplicación que será utili...

37  Actualización de SQL Server 6.5  ( Upgrading sql server 6 5 ) 
Sí, lo sé. La existencia de una copia en funcionamiento de SQL Server 6.5 en 2008 es absurda. que estipuló, ¿cuál es la mejor manera de migrar desde 6.5 ...

27  ¿Es apropiado Windows Server 2008 "Server Core" apropiado para una instancia de SQL Server?  ( Is windows server 2008 server core appropriate for a sql server instance ) 
Estoy configurando un cuadro dedicado de SQL Server 2005 en Windows Server 2008 esta semana, y quisiera apagarlo para ser lo más barboles posible mientras aún...

88  Cómo exportar datos de SQL Server 2005 a MySQL [CERRADO]  ( How to export data from sql server 2005 to mysql ) 
cerrado. Esta pregunta es off-topic . Actualmente no está aceptando respuestas. ¿Quieres ...

146  ¿Marque los cambios en una tabla de SQL Server?  ( Check for changes to an sql server table ) 
¿Cómo puedo monitorear una base de datos de SQL Server para cambios en una tabla sin usar desencadenantes o modificando la estructura de la base de datos de n...

26  ¿Por qué la indexación de texto completo de SQL no tiene resultados de devolución de texto para las palabras que contienen #?  ( Why doesnt sql full text indexing return results for words containing ) 
Por ejemplo, mi consulta es como la siguiente utilizando SQL Server 2005: SELECT * FROM Table WHERE FREETEXT(SearchField, 'c#') Tengo un índice de tex...

87  SQL Server 2005 Implementación de MySQL Reemplazar en?  ( Sql server 2005 implementation of mysql replace into ) 
MySQL tiene este comando increíblemente útil y propietario 99887776611 SQL. ¿Se puede emular fácilmente en SQL Server 2005? Inicio de una nueva transacc...

321  Base de datos de SQL Server de versiones  ( Versioning sql server database ) 
Quiero obtener mis bases de datos en Control de versión. ¿Alguien tiene algún consejo o artículos recomendados para comenzar? Siempre querré tener al menos ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos