Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak przekonwertować 3/4 znakową liczbę całkowitą na 24-godzinny format czasu i połączyć z datą?

To powinno wystarczyć:

;WITH CTE AS
(
    SELECT  *,
            DATEADD(HOUR,DOCTIME/100,DOCDATE) DocDateHour,
            CAST(RIGHT(DOCTIME,2) AS INT) DocTimeOnly
    FROM OPOR
)
SELECT DATEADD(MINUTE,DocTimeOnly,DocDateHour)
FROM CTE

A oto zmodyfikowany sqlfiddle abyś spróbował.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server — co się dzieje po zaktualizowaniu wiersza w tabeli?

  2. Znajdź ostatnie zmiany obiektów w bazie danych SQL Server

  3. Konwersja typu danych varchar na typ danych datetime spowodowała błąd wartości spoza zakresu

  4. Jak zmienić numer sekwencyjny konta pocztowego bazy danych w profilu w programie SQL Server (T-SQL)

  5. Pomoc dotycząca wyzwalania serwera sql - ta sama aktualizacja tabeli