我想在选择期间用for循环填充虚拟字段中的值:
Somethinhg like(表帐户,例如有一个字段“登录”)
选择登录,(对于i = 1到3 {list = list.login.i。“,”})作为帐户列表
结果应为
login | list
aaa | aaa1,aaa2,aaa3
bbb | bbb1,bbb2,bbb3
ccc | ccc1,ccc2,ccc3
如果有可能请有人帮助我!!!!
非常感谢!
答案 0 :(得分:0)
如果这是一次性任务并且您的循环大小已修复,您可以组成一个整数表,并使用包含login
列的表格执行笛卡尔积:
SELECT ACC.LOGIN || NUMBRS.NUM FROM
ACCOUNT ACC, TABLE (
SELECT '1' AS NUM FROM SYSIBM.SYSDUMMY1 UNION
SELECT '2' AS NUM FROM SYSIBM.SYSDUMMY1 UNION
SELECT '3' AS NUM FROM SYSIBM.SYSDUMMY1
) NUMBRS
它会为你提供像'aaa1','aaa2','aaa3'这样的字符串每行一个字符串。然后,您可以使用LISTAGG汇总这些字符串。
如果大小不固定,您可以随时组成一个临时表并用适当的数据填充它,而不是使用上面的NUMBRS
表。