首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >oracle中的数据抽取

oracle中的数据抽取
EN

Stack Overflow用户
提问于 2014-09-13 16:24:11
回答 1查看 64关注 0票数 0

我在导入数据时使用remap_data选项的问题。场景:

代码语言:javascript
复制
 create table test(fname varchar(20), lname varchar(20),fullname varchar(40));
 insert into test values('govind', 'verma','');

由于错误,我忘记了在全名中插入数据(我有大量数据,所以无法执行更新操作,所以我使用了数据泵)我使用expdp导出数据,但在重新加载时,我想使用remap_data选项执行操作,重映射函数输入应该是fname和lname,但希望在

代码语言:javascript
复制
fullname=concat(fname,':',lname)  

对于每一行。有可能吗?

EN

回答 1

Stack Overflow用户

发布于 2014-09-13 19:38:05

如果全名始终是名字和姓氏的串联,而不是尝试手动提供和维护,则可以使用a virtual column

代码语言:javascript
复制
alter table test drop column fullname;
alter table test add fullname generated always as (fname||' '||lname);

select * from test;

FNAME       LNAME       FULLNAME
----------- ----------- ------------------
govind      verma       govind verma

SQL Fiddle demo

您不需要更新现有行或导出/导入;查询时会自动生成虚拟值。根据它的使用方式,您可能会受益于像其他列一样在其上添加索引。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25821287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档