替换列中的字符串

0yg35tkg  于 2021-06-20  发布在  Mysql
关注(0)|答案(2)|浏览(398)

我有一个表,里面有一些数据,我想做的是从日期开始,把每个“工作日”都替换掉,只保留小时。日期值为“星期六-13:00”,我要“13:00”。
我设法用简单的方法来做这件事

update table_name set date = 'hour' where date = 'weekday-hour';

这似乎是多余的,我希望如果有一个更快的方法来做到这一点。当然,我也会做一个程序来做到这一点,但考虑循环每个工作日和时间从00:00-23:00似乎是一个很大的工作。
我找到了关于替换,但idk如果我使用正确。

prdp8dxp

prdp8dxp1#

您可以使用子字符串索引来查找 - 在时间之前,把一切都归还给正确的人。一些例子:

SELECT SUBSTRING_INDEX('Friday-1:00', '-', -1);
SELECT SUBSTRING_INDEX('Saturday-16:00', '-', -1)

输出:

1:00
16:00

要更新表,请使用以下查询:

UPDATE table_name SET `date` = SUBSTRING_INDEX(`date`, '-', -1)
o75abkj4

o75abkj42#

如果你愿意尝试一些新的东西而不是替换,你可以做得很好(列名,5)

相关问题