【发布时间】:2023-04-07 22:09:02
【问题描述】:
我在一个表中有三列。
要求:col2 和 col3 的值应为 col1。
下面显示了我现在拥有的表,需要更改。
col1 col2 col3
AB football
AB football
ER driving
ER driving
TR city
TR city
下面是需要改成的表格
col1 col2 col3
AB_football_1 AB football
AB_football_2 AB football
ER_driving_1 ER driving
ER_driving_2 ER driving
TR_city_1 TR city
TR_city_2 TR city
正如你在 col1 中看到的,它应该取 col2,put(下划线),然后 col3,put(下划线),然后根据 col2 和 col3 中的值递增数字。
这可以在 CREATE 或 SELECT 或 INSERT 语句或 Trigger 语句中处理,如果有任何提示将不胜感激。
【问题讨论】:
-
为什么不在
SELECT而不是INSERT生成该值? -
为什么需要这样做?如果要生成唯一键,为什么要重复信息而不是为每个 col2 和 col3 添加一个包含唯一编号的列,并将其包含在唯一键中?如果您需要以这种方式显示键,将三列连接在一起很容易。
-
您使用哪个版本的Oracle数据库?
-
@OtoShavadze,是的,我会这样做。有什么想法吗?
-
寻找row_num函数