Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #106637
    Avatar de C-S-RC-S-R
    Participante

      Ola pessoal,

      Gostaria de uma ajuda nesse SQL.

      Ela esta me devolvendo o sql_id e eu gostaria do comando.
      Fiz um join com v$sql porém existem vários registros pro mesmo sql_id.

      Alguem sabe como posso passar esse join sem repetir os sql_ids?

      vlw

      select to_char(a.sample_time, ‘HH24:MI:SS’) MY_TIME,a.session_id MY_SID,a.session_serial# MY_SER,DECODE(a.session_state, ‘WAITING’ ,a.event, a.session_state) MY_STATE,a.xid, a.sql_id,a.blocking_session MY_BLKR
      from v$active_session_history a, dba_users u
      where u.user_id = a.user_id
      and u.username = ‘
      and a.sample_time between to_date(’19/05/2014 20:50′,’DD/MM/YYYY HH24:MI’)
      and to_date(’19/05/2014 21:50′,’DD/MM/YYYY HH24:MI’);

      #106647
      Avatar de Fábio PradoFábio Prado
      Participante

        @C-S-R,

        Se vc pesquisar sobre essa visão (V$ACTIVE_SESSION_HISTORY) verá que ela contém uma linha p/ cada sessão de usuário, portanto, 2 ou mais usuários poderão executar o mesmo SQL e neste caso vc verá múltiplas linhas c/ o mesmo sql_id, ok? Se vc não quiser visualizá-las, apenas acrescente a cláusula DISTINCT no seu SQL.

        []s

        #106651
        Avatar de C-S-RC-S-R
        Participante

          Opa Fabio obrigado pela ajuda.

          Mas no meu caso é o mesmo usuário.
          O Problema é na hora do join com v$sql, nela existem varios sql_id iguais.

          Que se diferem em alguns campos. Porém nao existe um campo unico.

          Segui seu conselho e coloquei um distinct. Mas se existir no mesmo segundo a execução de um sql igual nao vai pegar.

          Segue o sql, caso alguem queira ver.

          select distinct to_char(a.sample_time, ‘HH24:MI:SS’) MY_TIME,a.sql_id,a.session_id MY_SID,a.session_serial# MY_SER,DECODE(a.session_state, ‘WAITING’ ,a.event, a.session_state) MY_STATE,a.xid, a.blocking_session MY_BLKR, S.SQL_FULLTEXT
          from v$active_session_history a, dba_users u, v$sql s
          where u.user_id = a.user_id
          and a.sql_id = s.sql_id
          and u.username = ‘user’
          and a.sample_time between to_date(’22/05/2014 15:05′,’DD/MM/YYYY HH24:MI’)
          and to_date(’22/05/2014 15:15′,’DD/MM/YYYY HH24:MI’)
          ORDER BY 1 DESC

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.
        plugins premium WordPress