У меня есть эта процедура магазина, и мне нужно получить все даты для этого nosologico для этого пользователя. Но на данный момент я получаю только даты, но это занимает 5 секунд.
Могу ли я сделать это быстрее, я пытаюсь выполнить соединение не с помощью ',', а с помощью 'join', но у меня есть некоторые ошибки. может кто-нибудь помочь
Это мой SQL:
create or replace PROCEDURE G_TICKETS_BY_STATO_CHIUSO(USERIDRICHIEDENTEP IN VARCHAR2, result_cursor OUT SYS_REFCURSOR)
IS
rc SYS_REFCURSOR;
BEGIN
OPEN rc FOR SELECT DISTINCT T.ID, a.NOME, a.COGNOME, T.OPERAZIONE
FROM TICKET_NOTIFICE T, RICOVERO r, ANAGRAFICA a ,PS_METADATA M,AMB_IMPEGNATIVE C, AMB_METADATA D
WHERE (T.USERIDRICHIEDENTE=USERIDRICHIEDENTEP and T.stato = '1' and T.NOTIFICATION='0' AND REGEXP_SUBSTR (T.NOSOLOGICO, '[^AMB_]+$',1,1)=C.ID_AMB_METADATI AND
C.ID_AMB_METADATI=D.ID_AMB_METADATI AND D.IDASSISTITO=a.IDASSISTITO)
OR (T.USERIDRICHIEDENTE=USERIDRICHIEDENTEP and T.stato = '1' and T.NOTIFICATION='0' AND T.NOSOLOGICO=r.NOSOLOGICO AND r.IDANAGRAFICA=a.ID )
or (T.USERIDRICHIEDENTE=USERIDRICHIEDENTEP and T.stato = '1' and T.NOTIFICATION='0' AND REGEXP_SUBSTR (T.NOSOLOGICO, '[^PS_]+$',1,1)=M.EPISODIOPSNUM AND M.IDANAGRAFICA=a.ID);
result_cursor := rc;
END;
Таблица выглядит так, а данные для пользователя следующие:
