内容简介:首先,您违反了规范化规则.你必须重新考虑设计.如果您有表列中的值,那么要获得计算值,您只需要一个select语句来获取您想要的结果.存储计算值通常是一个坏主意,并被认为是一个糟糕的设计.无论如何,因为你是11g,如果你真的想要一个计算列,那么我建议使用VIRTUAL COLUMN而不是手动更新列. UPDATE语句涉及很多开销.使用虚拟列可以减少大量开销.此外,您将完全摆脱手动工作和那些代码行来进行更新. Oracle为您完成工作.
我有一个包含3列a,b和c的表.我想知道如何更新第三列的值与每行中两个其他列的连接.
before update A B c ------------- 1 4 2 5 3 6 after update A B c ------------- 1 4 1_4 2 5 2_5 3 6 3_6
我怎样才能在oracle中这样做?
首先,您违反了规范化规则.你必须重新考虑设计.如果您有表列中的值,那么要获得计算值,您只需要一个select语句来获取您想要的结果.存储计算值通常是一个坏主意,并被认为是一个糟糕的设计.
无论如何,
因为你是11g,如果你真的想要一个计算列,那么我建议使用VIRTUAL COLUMN而不是手动更新列. UPDATE语句涉及很多开销.使用虚拟列可以减少大量开销.此外,您将完全摆脱手动工作和那些代码行来进行更新. Oracle为您完成工作.
当然,您将在虚拟列子句中使用相同的连接条件.
就像是,
Column_c varchar2(50)GENERATED ALWAYS AS(column_a ||’_’|| column_b)VIRTUAL
注意:使用时有一些限制.因此,请在实施之前参考文档.但是,对于OP提供的简单用例,虚拟列是直接拟合的.
更新我做了一个小测试.几乎没有观察到.请阅读此 question ,以便更好地了解如何实施我的建议.
翻译自:https://stackoverflow.com/questions/28542578/how-to-update-a-column-with-concatenate-of-two-other-column-in-a-same-table
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- H5 在线客服,1.1 版本更新,优化插件及连接问题
- node连接oracle数据库,更新数据后,数据库中不生效问题
- IMI v0.0.5 更新,连接池资源掉线重连及其他多项改进
- tcp 长连接与短连接
- 没有 HTTP 连接池,空谈什么持久连接
- Linux中软连接和硬连接的区别
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
数据结构与算法分析
韦斯 / 机械工业 / 2007-1 / 55.00元
本书是国外数据结构与算法分析方面的标准教材,使用最卓越的Java编程语言作为实现工具讨论了数据结构(组织大量数据的方法)和算法分析(对算法运行时间的估计)。 随着计算机速度的不断增加和功能的日益强大,人们对有效编程和算法分析的要求也在增长。本书把算法分析与最有效率的Java程序的开发有机地结合起来,深入分析每种算法,内容全面、缜密严格,并细致讲解精心构造程序的方法。 第......一起来看看 《数据结构与算法分析》 这本书的介绍吧!
RGB HSV 转换
RGB HSV 互转工具
HSV CMYK 转换工具
HSV CMYK互换工具