2017-08-17 5 views
-2

SQL Serverを使用して日付時刻形式をhh:mmに変換したいとします。SQL ServerでHH:MMに変換

たとえば、この値を2017-08-17 15:31:18.217から15:31に変換します。

誰でもこれを行う方法が分かっている場合は、お手伝いください。

+0

あなたはdatetime型に変換するか、単に 'SELECT SUBSTRING使用することができます( '2017年8月17日15:31:18.217'、12,5)を' –

+1

あなたの値がdatetime型として格納されている場合、この質問です[SQLのDateTime形式から時刻を取得する方法]の複製?(https://stackoverflow.com/questions/7710449/how-to-get-time-from-datetime-format-in-sql) –

+0

ありがとうございます。 。 –

答えて

2

はそれを行うための一つの方法である:

DECLARE @DateTime datetime = '2017-08-17 15:31:18.217' 

SELECT CONVERT(char(5), @DateTime, 108) 

結果:15:31

0

これらの2つのクエリを実行すると、現在の時間と分が表示されます。ここで

SELECT GETDATE() 
SELECT CONVERT(VARCHAR(5), CAST(GETDATE() AS TIME)) 
+0

@ロキ、これらの2つのクエリを実行してください、あなたは現在の時間と分を取得します。それが要件です。 SELECT GETDATE() SELECT CONVERT(VARCHAR(5)、CAST(GETDATE()AS TIME)) –

+0

これを回答に編集してください。したがって、将来のユーザーは理解することができます。また、[回答方法​​](https://stackoverflow.com/help/how-to-answer) – loki

+0

@Loki、完了、ありがとうございます –

0
SELECT CONVERT(VARCHAR(5), GETDATE(), 108) 

あなたがサポートされている場合TRY_CONVERTを使用したい場合があり、そしてあなたは常にではありません。その列。

変換される値の1つは、DATETIMEである必要があります。

0
SELECT FORMAT(cast('2017-08-17 15:31:18.217' as datetime),'hh:mm') 
+5

このコードスニペットが問題を解決するかもしれませんが[説明を含む] (http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)は本当にあなたの投稿の質を向上させるのに役立ちます。将来の読者の質問に答えていることを覚えておいてください。あなたのコード提案の理由が分からないかもしれません。 – doydoy

+0

提案に感謝します。 –