我正在使用ORACLE 11g学习SQL。如何在ORACLE SQL中逐个字符地打印字符串(来自SELECT查询),而又不使用Dual和PLSQL?这是示例字符串:
'MANOJ'
输出应该是这样的:
M A N O J
我尝试使用LEVEL,CONNECT BY,但它们在isqlplus中不起作用。请帮忙!
这是 SUBSTR 和 CONNECT BY LEVEL的简单用法。
例如,
SQL> SELECT SUBSTR('MANOJ', level, 1) str 2 FROM dual 3 CONNECT BY LEVEL <= LENGTH('MANOJ') 4 / S - M A N O J SQL>
不确定“不使用DUAL表”是什么意思,但是上面的双表仅用于创建示例数据进行演示。在您的情况下,您可以使用列名而不是对值进行硬编码,并且如果您的值是子查询的结果,则可以使用子查询代替对偶表。