ORA - 02287序列号不允许在这里

use*_*973 2 sql oracle oracle11g

我有一个表名测试,它有三列id,m_id和s_m_id

我正在执行下面的查询

select id,test.nextval listagg(m_id || ',' || s_m_id, ';') within group (order by m_id) as merge_ids 
from test t group by id
Run Code Online (Sandbox Code Playgroud)

比我收到错误ORA - 02287序列号不允许在这里.

Cod*_*odo 5

你想要一次性做太多事情.为分组创建子查询并稍后添加序列号:

select id, test.nextval, merge_ids
from (
    select id, listagg(m_id || ',' || s_m_id, ';') within group (order by m_id) as merge_ids
    from test t
    group by id
)
Run Code Online (Sandbox Code Playgroud)