mysql insert连接一个常量值

时间:2012-11-10 14:17:58

标签: mysql

我想插入一个名为TUC的常量,并将其与表的FirstName和LastName id的首字母连接起来。

id - 1
fname - 詹姆斯
lname - 债券

id - 2
fname - 丹尼尔 lname - Edgar

例如。 TUCJB001,TUCDE002,....

3 个答案:

答案 0 :(得分:3)

类似这样的事情

update tab 
SET newid=CONCAT('TUC', LEFT(fname, 1), LEFT(lname, 1), LPAD(id,03, '0'));

Demo

注意如果您想要4位数字,则需要进行如下所示的更改。

update tab 
SET newid=CONCAT('TUC', LEFT(fname, 1), LEFT(lname, 1), LPAD(id,digit_range, '0'));
                                                                ^^^^^^^^^^^

答案 1 :(得分:2)

您可以使用类似的内容来获取值:

select 
  concat('TUC', left(firstname, 1), left(lastname, 1), '00', cast(id as char)) newValue
from yourtable

然后更新:

update yourtable
set yourColumn =  concat('TUC', left(firstname, 1), left(lastname, 1), '00', cast(id as char))

请参阅SQL Fiddle with Demo

答案 2 :(得分:0)

UPDATE [table] SET [columnname] = CONCAT( UPPER(LEFT(fname, 1)), UPPER(LEFT(lname, 1)), LPAD(CONVERT(id, VARCHAR), 3, '0') );

相关问题