gpt4 book ai didi

MySQL 从转换为 varchar 的 datetime 中删除剩余时间。子字符串()?

转载 作者:行者123 更新时间:2023-11-29 03:52:32 25 4
gpt4 key购买 nike

我做的有点倒退:

所以我将一个列从 datetime 转换为 varchar(有正当理由)。我的问题是来自 TIME 的所有 0 也都发生了变化。尝试使用 concat() 剥离字符串。

Ex: 2013-12-12 00:00:00

Output: 2013-12-12

问题是,并非所有的 varchar 都以“00:00:00”结尾。其中一些是在系统转到 varchar 而不是 datetime 之后放入的,所以我可以直接从字符串中删除 say -X 而无需先检查它是否大于 12 个字符。

我在想类似的东西

UPDATE logic_intern_report_link SET comp_date=SUBSTR(comp_date,0,10)

然而,这最终会删除该列的所有值。

最佳答案

我同意 JW. 的解决方案,但只是回答你的问题:您在原始查询中获得空值的原因是 SUBSTR() 函数需要一个基于 1 的起始索引,而不是您作为第二个参数提供的零。试试这个

SELECT SUBSTR(comp_date,1,10) FROM logic_intern_report_link

看看区别。

(完整披露:SUBSTR() 函数也接受负起始索引)

关于MySQL 从转换为 varchar 的 datetime 中删除剩余时间。子字符串()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15480476/

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