SqlPlus有時會出現非預期的折行,比如這樣:
SQL> select id,level,lpad(' ',(level-1)*3)||name as name 2 from emp3 3 start with mngid is NULL 4 connect by mngid=prior id; ID LEVEL ---------- ---------- NAME -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 1 1 Andy 2 2 Bill 4 3 Douglas ID LEVEL ---------- ---------- NAME -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 5 3 Edin 3 2 Cindy 6 3 Felix ID LEVEL ---------- ---------- NAME --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
簡直不能忍,好在有 “column name format a40”命令的幫忙。
這一句的意思是指定name列的寬度是40個字符。
再弄就好了。
SQL> column name format a40; SQL> select id,level,lpad(' ',(level-1)*3)||name as name 2 from emp3 3 start with mngid is NULL 4 connect by mngid=prior id; ID LEVEL NAME ---------- ---------- ---------------------------------------- 1 1 Andy 2 2 Bill 4 3 Douglas 5 3 Edin 3 2 Cindy 6 3 Felix 8 4 Hitler 10 5 Jeep 9 4 Idiot 11 5 King 12 6 Linconn ID LEVEL NAME ---------- ---------- ---------------------------------------- 7 3 Green 已選擇12行。
當然,除了 ”column 列名 format a寬度“ 命令,SqlPlus還提供了如”set linesize 寬度“之類的命令,大家可以試試效果。
參考資料:
https://blog.51cto.com/meiling/1775065
END