Vij*_*jay 5 sql oracle sqlplus
我在接受采访时被问到来自oracle sql的一个问题.这似乎是一个简单的问题,但我没有回答的答案.有人帮忙吗?
如果在一个列中有像"newyork是一个美丽的城市"的字符串.
select column_name from table_name;
Run Code Online (Sandbox Code Playgroud)
将导致
newyork is a beautiful city
Run Code Online (Sandbox Code Playgroud)
将输出作为包含所有首字母的字符串所需的查询是什么.即,输出应该是
niabc
Run Code Online (Sandbox Code Playgroud)
如果您不关心维护输出的情况,这可以非常简单地完成而无需递归:
SQL> select
2 translate(
3 initcap('newyork is a BEAUTIFUL city')
4 , 'ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz'
5 , 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
6 )
7 from dual
8 /
TRANS
-----
NIABC
SQL>
Run Code Online (Sandbox Code Playgroud)
如果句子包含数字,标点符号等,那么我们必须将这些字符添加到第一个替换字符串,这可能会变得相当繁琐.