替换字段文本中的标签内容

本文介绍了一个使用 Oracle SQL 的具体示例,包括创建表、插入数据及如何通过 SQL 语句实现字符串替换来生成定制化的消息内容。该过程展示了基本的数据库操作,并通过两种不同的方法实现了将预设字符串中的占位符替换为实际字段值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、建表

create table TEST

(
  ID   NUMBER,
  NAME VARCHAR2(128),
  SEX  VARCHAR2(4),
  AGE  NUMBER(3),
  MSG  VARCHAR2(1024)
);


2、插入数据

insert into TEST (ID, NAME, SEX, AGE, MSG)
values (1, '张三', '男', 30, '亲爱的{name},你好!');
insert into TEST (ID, NAME, SEX, AGE, MSG)
values (2, '李四', '男', 12, '请确认你的年龄是{age}岁吗?');
insert into TEST (ID, NAME, SEX, AGE, MSG)
values (3, '王五', '女', 28, '{name}你好,今年你{age}岁对吗?');

commit;


3、实现结果,把标签替换为对应字段的内容

方法一:

SQL> select t.id,t.name,t.sex,t.age,replace(replace(msg,'{name}',name),'{age}',age) gg from test t;


        ID NAME                 SEX         AGE GG
---------- -------------------- ---- ---------- --------------------------------------------------
         1 张三                 男           30 亲爱的张三,你好!
         2 李四                 男           12 请确认你的年龄是12岁吗?
         3 王五                 女           28 王五你好,今年你28岁对吗?

方法二:

select t.id,t.name,t.sex,t.age,regexp_replace(regexp_replace(msg,'{name}',name),'{age}',age) from test t;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值