gpt4 book ai didi

mysql - 在 mysql 更新查询中创建变量和重用?可能的?

转载 作者:行者123 更新时间:2023-11-29 00:47:04 25 4
gpt4 key购买 nike

我正在为这个查询苦苦挣扎,想知道我是否在浪费时间并需要编写一个 php 脚本,或者像下面这样的东西是否真的可行?

UPDATE my_table 
SET @userid = user_id
AND SET filename('http://pathto/newfilename_'@userid'.jpg')
FROM my_table
WHERE filename
LIKE '%_%' AND filename
LIKE '%jpg'AND filename
NOT LIKE 'http%';

基本上我有 700 个奇怪的文件需要在数据库中重命名,因为它们与我正在更改系统时的文件名不匹配,它们在数据库中被调用。格式为 2_gfhgfhf.jpg,转换为 userid_randomjumble.jpg

但并非数据库中的所有文件都是这种格式,只有千分之七百左右。所以我想识别包含 _ 但不包含 http 的名称(这是我不想触及的正确格式)。

我可以很好地做到这一点,但现在棘手的一点来了!

我想将该文件名 userid_randomjumble.jpg 替换为 http://pathto/filename_userid.jpg 所以我想将该行中的列 user_id 设置为变量并将其插入到我的新文件名中。

由于显而易见的原因,上述方法不起作用,但我不确定是否有办法绕过我正在尝试做的事情。我不知道这是否可能?我是在浪费时间吗?我应该转向 PHP 和 mysql 并停止偷懒吗?还是有办法让它发挥作用?

最佳答案

是的,没有 php 是可能的。这是一个简单的例子

SET @a:=0;
SELECT * FROM table WHERE field_name = @a;

关于mysql - 在 mysql 更新查询中创建变量和重用?可能的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10116184/

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