gpt4 book ai didi

sql - 仅替换 SQL 中的部分字符串

转载 作者:行者123 更新时间:2023-12-02 17:24:00 26 4
gpt4 key购买 nike

我有一个包含 nvarchar 列的表,该列包含 YYYY:MM:DD HH:MM:SS 格式的 DateTime 数据。我想将此数据转换并更新为 YYYY-MM-DD HH:MM:SS 格式。

我面临的问题是,如果我使用 REPLACE,所有 : 都会被 - 替换,比如 YYYY- MM-DD HH-MM-SS 格式。

我怎样才能做到这一点?

现有数据:2016:10:27 15:39:33

REPLACE 后所需的数据格式:2016-10-27 15:39:33

编辑:我忘了提到该列也有其他 DateTime 格式的数据,比如

  • YYYY/MM/DD HH:MM:SS
  • DD/MM/YYYY HH:MM:SS

最佳答案

正如@jarlh 明智地指出的那样,您绝对应该避免将日期信息存储为 varchar,原因有很多。您将无法利用 SQL Server 处理日期和时间戳的任何强大功能。

但如果您真的只是出于格式化原因需要这样做,STUFF 可能会派上用场:

SELECT STUFF(STUFF(col, 5, 1, '-'), 8, 1, '-')
FROM yourTable

关于sql - 仅替换 SQL 中的部分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40281945/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com