2016-09-29 10 views
-2

私は同じテーブルで2時間の時間差をしたいので、08:30 AMのvarchar形式のSQLテーブルを持っています:MM AM/PMフォーマット.... どうすればいいですか?誰でも私を助けることができますか? ??SQLで12時間形式の時間差を確認するには?

+1

あなたの仕様にタグを追加してくださいデータベースシステム[タグ:sql-server]または[タグ:oracle]など)。異なるシステムでは、日付/時刻データ型のサポートが異なります。便利なのは時間*スパン*を表すデータ型がないものもありますので、通常はデータベース外のタイムスパンで作業することをお勧めします。 –

+0

Oracleおよび/またはMS SQL Server?あなたは両方で動作する答えを得ることはありません... – jarlh

答えて

0

次のスクリプト(SQL Serverの場合)を試してみてください。

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

--12時間時間の違いと分を取得--for

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

(私は、これは論理的に間違っていると思う)

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

出力: enter image description here

関連する問題