【发布时间】:2012-09-25 01:12:16
【问题描述】:
我正在尝试对某些变量使用 concat。这些变量已被声明为字符:
declare v_order_date char(10);
declare v_quantity char(11);
declare v_plant char(100);
我有一个光标,我将它们设置为一些输出。要调用结果,我将 v_msg 设置为
set v_msg := concat( v_msg, '\n', v_order_date, v_quantity, v_plant);
但是,当我选择 v_msg 时得到的结果是:
2012-01-222501008 Creeping Buttercup
但我想在我的选择中保持声明变量的长度,如下所示
2012-01-22 250 1008 Creeping Buttercup
有什么建议吗?谢谢你。
【问题讨论】:
-
不要将最大列长度与某种“可变长度”混淆。您希望在连接之前将每个值填充到最大列长度。在带有
printf的语言中,您可以使用“简单”格式说明符来执行此操作;我不确定使用 SQL 执行此操作的惯用方式。
标签: mysql concat variable-length