Sql 基于另一列的数据更改一列中的值
如何将同一表中的值从一列更新到另一列? 假设我有:Sql 基于另一列的数据更改一列中的值,sql,oracle,Sql,Oracle,如何将同一表中的值从一列更新到另一列? 假设我有: ID | GROUPNAME | GROUPNAME 1 010617 010617_ADMIN 010617_group 010618 010618_ADMIN 010618_group 我的意思是,从ID开始,它应该取值,然后按顺序从组名和组名2开始。我有大约2000条记录。只想在一个查询中执行。 提前谢谢 UPDATE yourtable SET groupname = CONCAT(ID,'_ADMI
ID | GROUPNAME | GROUPNAME 1
010617 010617_ADMIN 010617_group
010618 010618_ADMIN 010618_group
我的意思是,从ID开始,它应该取值,然后按顺序从组名和组名2开始。我有大约2000条记录。只想在一个查询中执行。
提前谢谢
UPDATE yourtable SET groupname = CONCAT(ID,'_ADMIN'), groupname1 = CONCAT(ID,'_group')
有条件
UPDATE yourtable SET groupname = CONCAT(ID,'_ADMIN'), groupname1 = CONCAT(ID,'_group') WHERE ...
您可能要考虑为这个
使用一个虚拟列 乙二醇您正在使用哪个数据库?您想将
groupname
中的数据放到groupname1
中,并将\u admin
中的数据替换到\u group
?Oracle DatabaseNope。从ID中,我需要将值插入组名和组名1。ID
是存在数据,而2groupname
为空?这是无效的SQL<代码>“\u ADMIN”是一个标识符。字符串常量需要在SQL中用单引号括起来,例如,“\u ADMIN”
它仍然是无效的标准SQL,问题是Oracle,而不是MySQL(你也应该停止在MySQL中使用非标准SQL,以防你有机会使用不同的、更符合标准的数据库)Ok,谢谢你的建议它起作用了谢谢兄弟。。!!如果对此感兴趣,请参见:
create table XXXXX
(
ID VARCHAR2(5),
GROUPNAME as ("ID"||'_ADMIN')
)