oracle如何添加虚列 增加列 oracle
oracle中的虚拟列指的是什么?
Oracle 11g 的新特性 —— 虚拟列
成都创新互联公司基于分布式IDC数据中心构建的平台为众多户提供绵阳主机托管 四川大带宽租用 成都机柜租用 成都服务器租用。
在老的 Oracle 版本,当我们需要使用表达式或者一些计算公式时,我们会创建数据库视图,如果我们需要在这个视图上使用索引,我们会创建基于函数的索引。
现在 Oracle 11g 允许我们直接在表上使用虚拟列来存储表达式。虚拟列的值是不存储在磁盘的,它们是在查询时根据定义的表达式临时计算的。
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。
oracle 添加列
添加列的语法是:
alter table table_name add (w number(4),y number(4));
但是你是无法控制新增的列在1,2,3,4,5前面。只能采用变通的方法;
1 如上先把列添加上。
2 然后
create table table_name1 select (A,B,C...,W,Y,1,2,3,4,5) from table_name;
3 drop table table_name;
4 alter table table_name1 rename table_name;
------------------------------补充------------------------------------
就我所了解看来,你必须这样做。
你的列很多?有多少?有1000个吗?
表中列的顺序并不重要。你如果非要达到这种效果那么不得不付出代价。比如说:像上面将每个列都写上去。。。
数据不会丢失。
如何在oracle表中添加一列从1开始递增的列,条件是根据前一列的重复数据递增列也可以重复
oracle中没有递增列,只有sequence,至于表中的数据,需要自行使用sequence插入,或者自己写trigger完成。
如果是11g可以使用虚拟列来完成,你的需求不明确,自行添加吧,示例语句:
alter table t add (xhh as (to_number(hh))) ;
to_number函数改成你自己想加的条件。
Oracle数组分组怎么实现虚加一列?
select decode(sex,'0','男','1','女','未知'),sum(count) from (select id,count(1) count from XXXXX group by id union all select '2' sex,0 from dual) group by id
我sex就是0 1 有2或者没2 先空加一列0的 然后外面再sum下就行了
分享名称:oracle如何添加虚列 增加列 oracle
文章来源:http://scyanting.com/article/hiihdd.html