发布网友
共3个回答
热心网友
lpad用法
lpad(字段名,填充长度,填充的字符)
如果是你那种写法的话函数用法你都用错了
select LEVEL, LPAD(LEVEL,2*LEVEL-1,' ')...
这样才是在左侧加空格
至于添加多少个空格,无非是个四则运算的问题,自己多写几个就知道了
热心网友
楼主应该是看的Oracle 10g的一个专门讲SQL的书,里面的讲分层语句start with和connect by的章节。其实楼主的语句没错,应该意思是在‘ ’空格左边再填上N个空格,通过LEVEL来决定到底空多少,因为减了一个长度,但是最前面是以' '开始的,所以总空格的长度是2*LEVEL,然后在结果集显示时,看着更直观。只是楼主语句没有copy完。。。
SELECT LEVEL,
LPAD(' ', 2 * LEVEL - 1) || first_name || ' ' || last_name AS employee
FROM more_employees
START WITH employee_id = (
SELECT employee_id
FROM more_employees
WHERE first_name = 'Kevin'
AND last_name = 'Black'
)
CONNECT BY PRIOR employee_id = manager_id;
完整的语句应该是。
热心网友
楼上的白狼兄 好久不见