繁体   English   中英

SQL,INGRES:在某些字符后用空白替换

[英]SQL , INGRES : replace by blank after some char

days: char (31)
period : char (31)

days : 1234567891234567891234567891234
period: AAAAAAAAAABBBBBBBBBBCCCCCCCCCCD

我想在第20个字符后用*代替所有内容

days : 12345678912345678912***********
period:AAAAAAAAAABBBBBBBBBB***********

任何想法?

您可以尝试类似:

select 
  rpad(substr(days,1,20),length(days),'*'),
  rpad(substr(period,1,20),length(period),'*')
from table

在SQL Server中:

 DECLARE @TABLE TABLE (DAYS VARCHAR(MAX), PERIOD VARCHAR(MAX))
insert into @table values 
('1234567891234567891234567891234', 'AAAAAAAAAABBBBBBBBBBCCCCCCCCCCD')

SELECT SUBSTRING(DAYS,1,20)+REPLICATE('*',LEN(DAYS)- 20),
SUBSTRING(PERIOD ,1,20)+REPLICATE('*',LEN(PERIOD)- 20) FROM @TABLE

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM