20

我的 CMS 已导入数据表单 XLS。但终于意识到它有错误的数据,在数据的末尾没有任何扩展名,在表的一列中,所以现在我想根据特定的ID更改多行的列数据?如何使用单个 SQL 查询来做到这一点?

我只想在这些数据的末尾添加“.jpg”。

图片 AspxCommerce 错误

4

6 回答 6

22
UPDATE a
SET a.Imagepath = a.ImagePath + '.jpg'
FROM aspx_itemimages a
WHERE a.ItemId = yourid
于 2013-05-22T06:54:56.813 回答
7

试试这个——

UPDATE aspx_itemimages
SET ImagePath = ImagePath + '.jpg'
--WHERE itemid = 755
于 2013-05-22T06:55:14.687 回答
4

尝试:

UPDATE ImagePath SET ImagePath = ImagePath + '.jpg'
于 2013-05-22T06:58:33.967 回答
4

根据您的屏幕截图,某些条目实际上确实以.jpg. 如果只想.jpg在不存在的地方追加,可以使用NOT LIKE谓词:

UPDATE  aspx_itemimages
SET     ImagePath = ImagePath + '.jpg'
WHERE   ImagePath NOT LIKE '%.jpg'
;

如果您意外再次运行查询,这也将阻止您多次添加扩展名。

于 2014-07-25T08:01:07.320 回答
1

上面的答案是正确的,但是添加 2 个字符串会返回 0,你必须连接两个字符串。这是示例:

UPDATE a
SET a.Imagepath = concat(ImagePath , '.jpg')
FROM aspx_itemimages a
WHERE a.ItemId = yourid
于 2018-03-13T13:07:26.150 回答
-2

最好和最简单的方法来做到这一点......

"UPDATE aspx_itemimages
 SET itempath = itempath +'.jpg'
 WHERE itemid = 755 "; 

注意:更新不会生成结果集。如果您想知道哪些记录将被修改,请首先运行Select使用相同条件的查询。如果结果为satisfactory,则运行更新查询。

于 2014-07-23T11:17:05.607 回答