-1

我有以下价值:

Jun **6** 2012 12:00:00:000AM

我想要的是:

Jun **06** 2012 12:00:00:000AM

0仅当 day 的值小于 时才应放在前面9

我该怎么做呢?

4

2 回答 2

4

如果您使用的是 SQL Server,您可以执行以下操作:

DECLARE @dt datetime = '1/1/2012'
SELECT CONVERT(VARCHAR(26), @dt, 107) + ' ' + CONVERT(VARCHAR(12), @dt, 114)
于 2012-06-22T15:02:17.707 回答
0

在任何数据库中,您都可以执行以下操作:

(case when substring(val, 5, 1) = ' '
      then substring(val, 1, 4)||'0'+substring(val, 5, 1000)
      else val
 end)

这将检查第 5 个字符是否为空格。如果是这样,则需要添加一个零。我假设“**”是为了强调而不是在字符串中。

问题是各种字符串运算符——子字符串和连接——往往因数据库而异。

于 2012-06-22T15:35:16.790 回答