由于业务需求的更改,将原本两个下拉框合并成为一个下拉框,数据库的一些字段不在需要,而将不需要的字段对应的数据复制到其它字段中去,保证数据不丢失。类似
- update crm_activity set entityType = 1,entityID = (select linkID from crm_activity where linkType = 2 ) ,entityName = (select linkName from crm_activity where linkType = 2) where linkType = 2
问题补充:LeeYee 写道 - update crm_activity set entityType = 1, entityID = linkID ,entityName = linkName
这个应该是你要的吧!
如果两个字段的值组合到一个字段中去
update crm_activity set entityType = entityID + entityName; 这样是不行的。
问题补充:- 怎么会没有效果?
-
- 简单点:以前就是姓和名都是分开的,现在的需求就是把姓名合在一起。
-
-
- update 表名 set name = surname || name ;
- 或者
- update 表名 set name = to_char(surname) || to_char(name)
-
- 你说的两种都不行。(surname 与 name 都是varchar类型 合成varchar类型)
问题补充:- 应该是这样的:
-
- update crm_salesLead set name = concat(ifnull(surname,''),ifnull(name,''))
-
- 1 楼正解
-
0
0
-
采纳的答案
可以使用CONCAT函数,还要使用ifnull判断是否空
update xxx set a=CONCAT(ifnull(b,''),ifnull(c,''),ifnull(ADDRESS_TOWN,'')) ;
2012年1月04日 17:34
-
0
0
-
引用 如果两个字段的值组合到一个字段中去
update crm_activity set entityType = entityID + entityName; 这样是不行的。
如果你的需求是合并字段,那么要使用连接符号
- update crm_activity set entityType = entityID||entityName;
- 如果是类型问题,那么你需要转换下类型
- update crm_activity set entityType = to_char(entityID)||to_char(entityName);
SQL中的字符连接不是java语法中的+,也不是php语法中的点号,而是 双竖线||
2012年1月10日 22:22
-
0
0
-
- update crm_activity set entityType = 1, entityID = linkID ,entityName = linkName
这个应该是你要的吧!
2012年1月04日 13:39
|