SQL将一个URL添加到列的每一行,文件名编号递增

时间:2016-05-18 20:37:14

标签: sql pervasive-sql

我向exvasive sql导入了一个excel表,但是当我检查表时,除了图片列行之外,每行都被导入了。我将excel图片保存到一个文件夹中,并试图将图片的网址添加到它所属的每一行。

图片名称如下:image001.png,image003.png,image005.png等。我想知道如何使用sql语句将url添加到每行并增加2:

"\images\image001.png"
"\images\image003.png"
"\images\image005.png"
"\images\image007.png"

等等。

我的表格结构如下:

表名是“products”,其中包含以下列:

"SCL No." CHAR(50) CASE ,
"Cus No." CHAR(80) CASE ,
"OEM" CHAR(50) CASE ,
"Description" CHAR(110) CASE ,
"Q'ty" CHAR(10) CASE ,
"Unite" CHAR(10) CASE ,
"FOB" CHAR(10) CASE ,
"Amount" CHAR(10) CASE ,
"Remark" CHAR(40) CASE ,
"Picture" CHAR(100) CASE 

网址的顺序是顺序的:在第一行“\ images \ image001.png”中,在第二行“\ images \ image003.png”中依此类推......将图像数增加2。 / p>

我正在使用普及的sql控制中心版本9.50。

我不想手动执行,因为有600行。

感谢。

1 个答案:

答案 0 :(得分:1)

我对普及的sql一无所知,但根据你所描述的内容,我会说你只需要一个更新语句来做到这一点(你需要将它翻译成你的SQL品牌) ):

还有一个关于编号的问题,假设你增加了两行并且有600行,但你的编号示例仅提供1到999的数字,所以我把它们放在0001的格式中 - >

UPDATE Products SET Picture = '\images\image' + Right('000' + LTrim(RTrim(Cast(((RowID() * 2) - 1) as varchar(4)))), 4) + '.png'

我认为括号是正确的,但即使它们不是我认为你应该看到我试图传达的内容。