gpt4 book ai didi

Mysql根据列输入动态更新行

转载 作者:行者123 更新时间:2023-11-29 03:07:20 24 4
gpt4 key购买 nike

我有以下问题。我有一个名为 titles 的表,其结构如下:

id int(10),
name varchar(100),

稍后我们添加了一个名为 modified_name 的新列。它的定义与 name 相同,只是它是小写字母并且所有空格都替换为 -。我们添加了这一列,因此我们现在需要将正确的修改名称值获取到该列的每条记录中。为此,我们编写了一个 PHP 脚本,该脚本通过从数据库中加载值并对其进行处理来处理该问题,但效率非常低。是否可以编写单个 UPDATE 查询,将正确的值添加到 titles 表中的每条记录。我可以想办法用一个存储过程和一个 while 循环来做到这一点,但我想知道是否有更有效的方法。有什么方法可以实现如下内容:

UPDATE `titles` 
SET
`modified_name` = LOWER(REPLACE(SELECT `name` FROM `titles` WHERE id = PRESENT_VALUE), ' ', '-');

目标是将 titles 表中每条记录的 modified_title 列设置为从该记录的 name 列产生的唯一值如下:

# Before modification update query
name = "Hello Goodbye"
modified_name = ""

# After modification update
name = "Hello Goodbye"
modified_name = "hello-goodbye"

感谢您的帮助,如有任何关于如何最好地执行此操作的建议,我们将不胜感激。

最佳答案

UPDATE `titles` SET `modified_name` = LOWER(REPLACE(`name`, ' ', '-'))

关于Mysql根据列输入动态更新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13314738/

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