私は次の値を持っています:
Jun **6** 2012 12:00:00:000AM
私が欲しいのは:
Jun **06** 2012 12:00:00:000AM
0
day の値が より小さい場合にのみ先頭に追加する必要があります9
。
どうすればいいですか?
SQL Server を使用している場合は、次のことができます。
DECLARE @dt datetime = '1/1/2012'
SELECT CONVERT(VARCHAR(26), @dt, 107) + ' ' + CONVERT(VARCHAR(12), @dt, 114)
どのデータベースでも、次のようなことができます。
(case when substring(val, 5, 1) = ' '
then substring(val, 1, 4)||'0'+substring(val, 5, 1000)
else val
end)
これにより、5 番目の文字がスペースかどうかがチェックされます。その場合は、ゼロを追加する必要があります。「**」は文字列ではなく強調するためのものだと思います。
問題は、さまざまな文字列演算子 (部分文字列と連結) がデータベースによって異なる傾向があることです。