不要在游标中显示重复值 PL/SQL

Do not show duplicate values ​in a cursor PL/SQL

嗨,此刻我正在 returning 这些值

--Group: Junior -- Name: Jared Ramirez -- Id Agent: 1
--Group: Junior -- Name: Jared Ramirez -- Id Agent: 1
--Group: Junior -- Name: Lilah Bailey -- Id Agent: 26
--Group: Junior -- NoNamebre: Lilah Bailey -- Id Agent: 26
--Group: Junior -- Name: Lilah Bailey -- Id Agent: 26

但是我想return例如每个代理号码只有1个

--Grupo: Junior -- Nombre: Jared Ramirez -- Id Agente: 1
--Grupo: Junior -- Nombre: Lilah Bailey -- Id Agente: 26
DECLARE 
idCalls CALLS.CALL_ENTRY_ID%type;
idAgenteLlamada CALLS.ID_AGENT%type;

CURSOR c_Call (idCalls CALLS.CALL_ENTRY_ID%type) is
                                                SELECT ID_AGENT
                                                FROM CALLS                                                                                                
                                                WHERE CALL_ENTRY_ID = idCalls;

BEGIN
    OPEN c_Call (idCalls);
    FETCH c_Call INTO idAgentCall;
    WHILE c_Call %FOUND 
         LOOP
         dbms_output.put_line('--Group: '||usergroup||' -- Name: '|| userName|| ' -- Id Agent: ' || idAgentCall);
         FETCH c_Call INTO idAgentCall;
         END LOOP;
    CLOSE c_Call ;
END; 

我已经尝试使用 distinctGROUP BY,但它仍然保持 returning 重复值。有什么想法吗?

如果您在 SQL 中执行此查询,那么您会得到多行吗?如果您在 ID_AGENT 中得到多行,那么您可以尝试使用 DISTINCT 并查看是否得到一行或每个代理多个拖车。

SELECT ID_AGENT FROM CALLS WHERE CALL_ENTRY_ID = idCalls;