是否可以创建动态订单?就像是
Select * from ztable_name Order by variable_name
或者,如果不可能的话,也许还有其他方法可以做到这一点?谢谢,提前感谢任何帮助。
要为vwegert的答案提供更多详细信息:在您的示例中,variable_name
必须是列的名称(因为您想按列排序)。但这不是通过使用文本变量,而是使用文本表。想象一下您要订购的表格有 5 列:
如果你想动态排序,比如说 COL2 和 COL4,它是这样的:
DATA: itab_order TYPE TABLE OF char_72,
wa_order LIKE LINE OF itab_order.
wa_order = 'COL2'.
APPEND wa_order TO itab_order.
wa_order = 'COL4'.
APPEND wa_order TO itab_order.
SELECT *
FROM ztable_name
INTO itab_ztable_name
ORDER BY (itab_order).
ENDSELECT.
希望这可以帮助 :)
请检查文档:
动态指定列
ORDER BY
要动态指定子句 中的列,请使用:SELECT ... ORDER BY (<itab>).
where<itab>
是一个内部表,具有行类型C
,最大长度为 72 个字符,包含列名。