gpt4 book ai didi

oracle - 如何格式化由 dbms_output.put_line PL/SQL 创建的表?

转载 作者:行者123 更新时间:2023-12-02 06:32:48 27 4
gpt4 key购买 nike

我有一个在spool中生成表格的过程:

create procedure.....
......
loop
...
dbms_output.put_line(p_taskno||' '||p_descrip||' '||p_hrs||' '||p_start_date);
.........

输出正确,但格式不正确:

***************************************                                         
ABC Company Projects:
Project: 5555
TaskNo Description Hours StartDate
_____________________________________________
11 Prototype New Screens 30 23-AUG-06
12 Convert Data Files 10.5 15-SEP-06
13 Create Test Plan 15 14-AUG-06
62 Develop Enterprise Model 280 26-OCT-06
_____________________________________________
Number of Tasks: 4
Total Project Hours: 335.5

我无法使用列描述格式a20 word_wrapped,因为该表是dbms_output.put_line的结果。我怎样才能格式化它?

最佳答案

您需要计算出列的最大大小,然后用空格填充输出。

因此,您希望 taskno 与其标题对齐,即六个字符。因为它是一个数字,所以您希望它在右侧对齐:

lpad(to_char(taskno), 6)

而描述是一个字符串,因此您需要将其左对齐

rpad(p_description, 30)

也在标题的元素上使用这些函数,以获得最简洁的输出。

关于oracle - 如何格式化由 dbms_output.put_line PL/SQL 创建的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17249225/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com