2016-09-29 8 views
-2

Ich habe die Zeit 08:30 Varchar-Format in SQL-Tabelle, so will ich Zeitunterschied zwischen zwei Mal in der gleichen HH: MM AM/PM-Format .... Wie kann ich überprüfen ??? Jeder kann mir helfen ?? ??Wie Zeitunterschied von 12 Stundenformat in SQL überprüfen?

+1

Bitte fügen Sie ein Tag für Ihre Spezi fisches Datenbanksystem (z.B. [tag: sql-server] oder [tag: oracle], usw.). Verschiedene Systeme unterstützen Datums-/Uhrzeitdatentypen unterschiedlich. Einige haben keinen Datentyp, der eine Zeit * span * darstellt, und deshalb würde ich normalerweise empfehlen, mit Zeitspannen außerhalb der Datenbank zu arbeiten. –

+0

Oracle und/oder MS SQL Server? Sie erhalten keine Antwort, die mit beiden ... – jarlh

Antwort

0

Probieren Sie mit dem folgenden Skript (für SQL-Server).

DECLARE @a VARCHAR(8)='08:30 PM' 
DECLARE @b VARCHAR(8)='12:50 AM' 
DECLARE @null time='00:00:00'; 

--12 Stunde (ich denke, das ist logisch falsch ist)

SELECT CONVERT(VARCHAR(15),DATEADD(SECOND, - DATEDIFF(SECOND, cast(@b as time), cast(@a as time)), @null),100) 

--für den Unterschied in Stunden und Minuten bekommen

SELECT CAST(DATEADD(SECOND, - DATEDIFF(SECOND, cast(@b as time), cast(@a as time)), @null) as VARCHAR(5)) 

Ausgang: enter image description here