[Resolvido]Diferença de datas no Oracle

Bom dia pessoal,

não tenho muita experiencia com SQL e estou me quebrando para realizar um calculo de datas.
Preciso gravar no banco de o tempo que o usuario ficou logado. Estou utilizando a sql:

UPDATE BCJOWN.PRODUTIVIDADE SET PRODUTIVIDADE.DT_HORA_FIM_CONSULTA = SYSDATE, PRODUTIVIDADE.QT_TEMPO_CONSULTA = (SYSDATE - PRODUTIVIDADE.DT_HORA_INICIO_CONSULTA) WHERE PRODUTIVIDADE.NR_MATRICULA_USUARIO = 0 AND PRODUTIVIDADE.CD_CORREIO = 4;

Mas está retornando o erro:
[b][color=red]Error: ORA-00932: inconsistent datatypes: expected NUMBER got INTERVAL DAY TO SECOND

SQLState: 42000
ErrorCode: 932[/color][/b]

Obs.: preciso gravar o tempo em segundos.
A coluna QT_TEMPO_CONSULTA é um NUMBER.

Obrigada.

Caso ajude alguém, esse é o SQL que funcionou.

UPDATE BCJOWN.PRODUTIVIDADE SET PRODUTIVIDADE.DT_HORA_FIM_CONSULTA = SYSDATE, PRODUTIVIDADE.QT_TEMPO_CONSULTA = TRUNC((CAST(SYSDATE AS DATE)- CAST(PRODUTIVIDADE.DT_HORA_INICIO_CONSULTA AS DATE))*24*60*60) WHERE PRODUTIVIDADE.NR_MATRICULA_USUARIO = 0 AND PRODUTIVIDADE.CD_CORREIO = 4;