不要在游标中显示重复值 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;
我已经尝试使用 distinct
和 GROUP BY
,但它仍然保持 returning 重复值。有什么想法吗?
如果您在 SQL 中执行此查询,那么您会得到多行吗?如果您在 ID_AGENT 中得到多行,那么您可以尝试使用 DISTINCT 并查看是否得到一行或每个代理多个拖车。
SELECT ID_AGENT FROM CALLS WHERE CALL_ENTRY_ID = idCalls;
嗨,此刻我正在 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;
我已经尝试使用 distinct
和 GROUP BY
,但它仍然保持 returning 重复值。有什么想法吗?
如果您在 SQL 中执行此查询,那么您会得到多行吗?如果您在 ID_AGENT 中得到多行,那么您可以尝试使用 DISTINCT 并查看是否得到一行或每个代理多个拖车。
SELECT ID_AGENT FROM CALLS WHERE CALL_ENTRY_ID = idCalls;