gpt4 book ai didi

database - 将一个 Oracle 表(数据)转换为填充略有不同的 Oracle 表的最佳方法是什么?

转载 作者:搜寻专家 更新时间:2023-10-30 19:58:33 24 4
gpt4 key购买 nike

我有两个 Oracle 表,一个旧的和一个新的。旧表设计不佳(请注意,比我的设计更糟)但有大量当前数据需要迁移到我创建的新表中。

新表有新的列,不同的列。

我想到了只编写一个 PHP 脚本或带有一大堆字符串替换的东西......显然这是一种愚蠢的方法。

我真的很希望能够在此过程中稍微清理一下数据。其中一些存储时带有标记(例如:“
名字
”)、大量空白等,所以我真的很想在将其放入新表之前修复所有这些问题。

有没有人有过这样的经历?我该怎么办?

谢谢:)

最佳答案

我经常这样做 - 您可以使用简单的选择状态进行迁移:

create table newtable as select 
field1,
trim(oldfield2) as field3,
cast(field3 as number(6)) as field4,
(select pk from lookuptable where value = field5) as field5,
etc,
from
oldtable

在清理和转换数据方面,使用 php 等中间语言可以做的事情几乎没有用原生 SQL 做不到的事情。

对于更复杂的清理,您始终可以创建一个执行繁重工作的 sql 函数,但我已经清理了一些非常糟糕的数据而没有求助于它。不要忘记在 oracle 中你有解码、case 语句等。

关于database - 将一个 Oracle 表(数据)转换为填充略有不同的 Oracle 表的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4281476/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com