Bonjour, je recherche à effectuer la différence entre deux horraire l'un defini dans une table l'autre étant la date courante.

en premier très simple j'ai tenté ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
select to_char(sysdate,'hh24:mi:ss') - to_char(XXXXXX,'hh24:mi:ss') from dual, v5.toto
mais j'ai eu comme erreur cellec ci
ORA-01722: invalid number


J'ai tenté de développer un PL/SQL mais j'ai comme erreur celle-ci.

ORA-06502: PL/SQL: numeric or value error: character to number conversion error
ORA-06512: at line 28


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
DECLARE
cursor chdjour (hjour2 VARCHAR2)
is 
select to_char(sysdate,'hh24:mi') as hjour 
from dual;
--
cursor hcommande (henvoi2 VARCHAR2)
is
select distinct to_char(XXXXX,'hh24:mi') as henvoi
from v5.toto
where 1=1
and trunc(Plop) = trunc(sysdate);
--
hjour VARCHAR2 (30 Byte); 
henvoi VARCHAR2 (30 Byte);
diff VARCHAR2 (30 Byte);
--
BEGIN
    open chdjour (hjour);
    loop
    fetch chdjour
    into hjour;
        open hcommande (henvoi);
        loop
        fetch  hcommande
        into henvoi;
        diff := (henvoi - hjour);
         dbms_output.put_line('nblien='||diff); 
         end loop;
         close hcommande;
         EXIT WHEN chdjour%NOTFOUND;
    EXIT WHEN hcommande%NOTFOUND;
    END LOOP;
    close chdjour;
end;
Par contre j'insiste sur le fait que si je peux éviter le PL/SQL c'est mieux
je voudrai ensuite comparer cette valeur à une autre et effecuter une action si besoin...
Merci