Jump to content

nicolasrds

Members
  • Content count

    11
  • Joined

  • Last visited

Community Reputation

0 Comum

About nicolasrds

  1. nicolasrds

    Converter Coluna em Linha Oracle

    Vlw Motta, O meu caso é igual o do 2º link. Acabei resolvendo sem o PIVOT.
  2. nicolasrds

    Converter Coluna em Linha Oracle

    Boa tarde, Tenho a seguinte consulta: select usuario.usuarionm USUARIOS item.desc DESCRICAO count(item.qtde) TOTAL, estoque.data from usuario, item, estoque where usuario.cd_estoque = estoque.cd_usuario and item.cd_estoque = estoque.cd_estoque and item.sn_realizado = 'S' group by usuario.usuarionm, item.desc, estoque.data Traz o resultado abaixo USUARIOS DESCRICAO TOTAL DATA USUARIO1 CONCENTRADO 1 6 28/04/17 USUARIO2 CONCENTRADO 2 3 18/05/17 USUARIO3 CONCENTRADO 3 4 18/05/17 USUARIO1 CONCENTRADO 1 8 20/05/17 Gostaria de Trazer assim: USUARIOS DESCRICAO 28/04/17 18/05/17 20/05/17 USUARIO1 CONCENTRADO 1 6 USUARIO2 CONCENTRADO 2 3 USUARIO3 CONCENTRADO 3 4 USUARIO1 CONCENTRADO 1 8 Já tentei utilizar o PIVOT mas não deu muito certo. Alguma ideia?!? Desde já agradeço pela ajuda.
  3. Boa noite, Pessoal podem me ajudar, estou precisando eliminar a duplicidade de registros. Segue query: select pdc.cd_pront as Pront, case when htc.dt_checagem is not null and htc.suspenso = 'N' then 'SIM' else 'NAO' end as Checado from pw_documento_clinico pdc inner join pw_editor_clinico pec on pec.cd_documento_clinico = pdc.cd_documento_clinico inner join registro_documento_obrigatorio rdo on rdo.cd_editor_clinico = pec.cd_editor_registro left join hritpre_cons htc on rdo.cd_itpre_med = htc.cd_itpre_med where pdc.nm_documento = 'DOCUMENTO' and pdc.tp_status in ('FECHADO') and rdo.cd_documento = 999 and pdc.cd_pront = 99999 and pdc.dh_referencia = '01/01/2001' Resultado: Pront | Checado 99999 | SIM 99999 | SIM Acontece que na tabela hritpre_cons pode acontecer que o campo cd_itpre_med apresente o mesmo valor em vários registros e este é o único campo que posso utilizar para o join. Por isso está ocorrendo a duplicidade. Preciso trazer o primeiro valor dos campos suspenso e dh_checagem que conste o cd_itpre_med . Como posso corrigir no select acima. Agradeço pela ajuda.
  4. nicolasrds

    Formatar a query para trazer em coluna ao invés da linha

    Pessoal boa noite, Com os agrupamentos não deu certo, mas me deu uma ideia e acabei resolvendo de um outro jeito. De qualquer forma vlw. vocês são feras :D select atendimento, paciente, data_internacao, data_entrada, data_saida, from ( -- TRANSFERIDO DE(ENTRADA) select atendime.cd_atendimento atendimento, paciente.nm_paciente paciente, unid_int.ds_unid_int unidade_internacao, trunc(atendime.dt_atendimento) data_internacao, leito_origem.ds_resumo origem, leito_destino.ds_resumo destino, mov_int.hr_mov_int data_entrada, case when(select min(m2.hr_mov_int) from mov_int m2 where m2.cd_leito_anterior = mov_int.cd_leito and m2.cd_atendimento = mov_int.cd_atendimento and m2.hr_mov_int > mov_int.hr_mov_int) is null then (select at.hr_alta from atendime at where at.cd_atendimento = mov_int.cd_atendimento and at.cd_mot_alt is not null and at.hr_alta > mov_int.hr_mov_int) else (select min(m2.hr_mov_int) from mov_int m2 where m2.cd_leito_anterior = mov_int.cd_leito and m2.cd_atendimento = mov_int.cd_atendimento and m2.hr_mov_int > mov_int.hr_mov_int) end data_saida from mov_int inner join leito leito_destino on leito_destino.cd_leito = mov_int.cd_leito inner join leito leito_origem on leito_origem.cd_leito = mov_int.cd_leito_anterior inner join unid_int on leito_destino.cd_unid_int = unid_int.cd_unid_int inner join atendime on mov_int.cd_atendimento = atendime.cd_atendimento inner join paciente on atendime.cd_paciente = paciente.cd_paciente where mov_int.tp_mov = 'O' and atendime.tp_atendimento = 'I' and leito_origem.cd_unid_int != leito_destino.cd_unid_int and unid_int.sn_ativo = 'S' and trunc(nvl(mov_int.dt_lib_mov, sysdate)) >= trunc(mov_int.dt_mov_int) union all --INTERNACAO(ENTRADA) select atendime.cd_atendimento atendimento, paciente.nm_paciente paciente, unid_int.ds_unid_int unidade_internacao, trunc(atendime.dt_atendimento) data_internacao, ' ' origem, leito_destino.ds_resumo destino, mov_int.hr_mov_int data_entrada, case when(select min(m2.hr_mov_int) from mov_int m2 where m2.cd_leito_anterior = mov_int.cd_leito and m2.cd_atendimento = mov_int.cd_atendimento and m2.hr_mov_int > mov_int.hr_mov_int) is null then (select at.hr_alta from atendime at where at.cd_atendimento = mov_int.cd_atendimento and at.cd_mot_alt is not null and at.hr_alta > mov_int.hr_mov_int) else (select min(m2.hr_mov_int) from mov_int m2 where m2.cd_leito_anterior = mov_int.cd_leito and m2.cd_atendimento = mov_int.cd_atendimento and m2.hr_mov_int > mov_int.hr_mov_int) end data_saida from mov_int inner join leito leito_destino on leito_destino.cd_leito = mov_int.cd_leito inner join unid_int on leito_destino.cd_unid_int = unid_int.cd_unid_int inner join atendime on mov_int.cd_atendimento = atendime.cd_atendimento inner join paciente on atendime.cd_paciente = paciente.cd_paciente where mov_int.tp_mov = 'I' and atendime.tp_atendimento = 'I' and unid_int.sn_ativo = 'S' and trunc(nvl(mov_int.dt_lib_mov, sysdate)) >= trunc(mov_int.dt_mov_int) )where data_entrada between '01/10/2016' and '31/10/2016' and unidade_internacao = 'UNIDADE A' and atendimento = 102866;
  5. Pessoal, Como faço para formatar a query abaixo para trazer a primeira 'data_entrada' com a primeira 'data_saida' ?!? Atualmente minha query está trazendo como linha, gostaria de trazer como coluna. select atendimento, paciente, data_internacao, data_entrada, data_saida from ( -- TRANSFERIDO PARA(SAIDA) select atendime.cd_atendimento atendimento, paciente.nm_paciente paciente, trunc(atendime.dt_atendimento) data_internacao, ' ' data_entrada, to_char(mov_int.hr_mov_int,'dd/mm/yyyy hh24:mi') data_saida, trunc(mov_int.dt_mov_int) data_pesquisa, unid_int.ds_unid_int unidade_internacao from mov_int inner join leito leito_destino on leito_destino.cd_leito = mov_int.cd_leito inner join leito leito_origem on leito_origem.cd_leito = mov_int.cd_leito_anterior inner join unid_int on leito_origem.cd_unid_int = unid_int.cd_unid_int inner join atendime on mov_int.cd_atendimento = atendime.cd_atendimento inner join paciente on atendime.cd_paciente = paciente.cd_paciente where mov_int.tp_mov = 'O' and atendime.tp_atendimento = 'I' and leito_origem.cd_unid_int != leito_destino.cd_unid_int and unid_int.sn_ativo = 'S' and trunc(nvl(mov_int.dt_lib_mov, sysdate)) >= trunc(mov_int.dt_mov_int) union all -- TRANSFERIDO DE(ENTRADA) select atendime.cd_atendimento atendimento, paciente.nm_paciente paciente, trunc(atendime.dt_atendimento) data_internacao, to_char(mov_int.hr_mov_int, 'dd/mm/yyy hh24:mi') data_entrada, ' ' data_saida, trunc(mov_int.dt_mov_int) data_pesquisa, unid_int.ds_unid_int unidade_internacao from mov_int inner join leito leito_destino on leito_destino.cd_leito = mov_int.cd_leito inner join leito leito_origem on leito_origem.cd_leito = mov_int.cd_leito_anterior inner join unid_int on leito_destino.cd_unid_int = unid_int.cd_unid_int inner join atendime on mov_int.cd_atendimento = atendime.cd_atendimento inner join paciente on atendime.cd_paciente = paciente.cd_paciente where mov_int.tp_mov = 'O' and atendime.tp_atendimento = 'I' and leito_origem.cd_unid_int != leito_destino.cd_unid_int and unid_int.sn_ativo = 'S' and trunc(nvl(mov_int.dt_lib_mov, sysdate)) >= trunc(mov_int.dt_mov_int) union all --INTERNACAO(ENTRADA) select atendime.cd_atendimento atendimento, paciente.nm_paciente paciente, trunc(atendime.dt_atendimento) data_internacao, to_char(mov_int.hr_mov_int, 'dd/mm/yyy hh24:mi') data_entrada, ' ' data_saida, trunc(mov_int.dt_mov_int) data_pesquisa, unid_int.ds_unid_int unidade_internacao from mov_int inner join leito leito_destino on leito_destino.cd_leito = mov_int.cd_leito inner join unid_int on leito_destino.cd_unid_int = unid_int.cd_unid_int inner join atendime on mov_int.cd_atendimento = atendime.cd_atendimento inner join paciente on atendime.cd_paciente = paciente.cd_paciente where mov_int.tp_mov = 'I' and atendime.tp_atendimento = 'I' and unid_int.sn_ativo = 'S' and trunc(nvl(mov_int.dt_lib_mov, sysdate)) >= trunc(mov_int.dt_mov_int) union all --ALTA(SAIDA) select atendime.cd_atendimento atendimento, paciente.nm_paciente paciente, trunc(atendime.dt_atendimento) data_internacao, ' ' data_entrada, to_char(atendime.hr_alta,'dd/mm/yyyy hh24:mi') data_saida, trunc(atendime.dt_alta) data_pesquisa, unid_int.ds_unid_int unidade_internacao from atendime inner join paciente on atendime.cd_paciente = paciente.cd_paciente inner join leito on leito.cd_leito = atendime.cd_leito inner join unid_int on leito.cd_unid_int = unid_int.cd_unid_int inner join mot_alt on atendime.cd_mot_alt = mot_alt.cd_mot_alt where atendime.tp_atendimento = 'I') where data_pesquisa between '01/10/2016' and '31/10/2016' and unidade_internacao = 'UNIDADE A' and atendimento = 102866 order by data_pesquisa; Resultado atual: Atendimento | Paciente | Data_internacao| Data_entrada | Data_saida | 102866 NICOLAS RODRIGUES 22/10/16 24/10/016 01:53 102866 NICOLAS RODRIGUES 22/10/16 27/10/016 17:44 102866 NICOLAS RODRIGUES 22/10/16 27/10/2016 16:13 102866 NICOLAS RODRIGUES 22/10/16 30/10/2016 18:31 A ideia é trazer da seguinte forma: Atendimento | Paciente | Data_internacao| Data_entrada | Data_saida | 102866 NICOLAS RODRIGUES 22/10/16 24/10/016 01:53 27/10/2016 16:13 102866 NICOLAS RODRIGUES 22/10/16 27/10/016 17:44 30/10/2016 18:31 Desde já agradeço pela ajuda.
  6. Desculpe pela demora, Deu certo a dica! Obrigado!! :)
  7. Pessoal boa tarde, Preciso criar uma lista de datas com todas as horas e minutos, Como posso percorrer todas as horas e minutos de cada dia desse intervalo ? ( select to_date('20/11/2016', 'DD/MM/YYY') + rownum where to_date('20/11/2016', 'DD/MM/YYY') + rownum <= to_date('23/11/2016', 'DD/MM/YYYY') ) Desde já agradeço pela ajuda.
  8. Bom galera, estou com um erro ao importar uma base para meu banco. o erro apresentado é o seguinte: . . importando table "TABLE_ACESSO" IMP-00009: fim anormal do arquivo de exportação IMP-00028: importação parcial da tabela anterior repetida: 123475590 linhas repetidas Importação encerrada com êxito, com advertências. Simplesmente trava nessa tabela e não passa. já rodar o imp utilizando o parâmetro buffer e recordlength e o erro continua. Comando utilizado: imp SYS\SENHA@ORACLE_NET fromuser=USER touser=USER_NOVO file=/bancos/backup/export_ARS12833475.dmp log=/bancos/backup/export_ARS12833475.log buffer=100000 recordlength=65535 Podem me ajudar ?
  9. nicolasrds

    ERROR ORA-12520: TNS:listener não está disponível

    Via SQL Plus conecta normalmente! Resolvi o problema adicionando uma outra entrada no meu tnsnames.ora ORACLE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = servidor)(PORT = 1521)) (CONNECT_DATA = (SERVER = SHARED) (SERVICE_NAME = ORACLE) ) ) ORACLE_NET = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = bd02)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORACLE) ) Utilizo o IMP passando o ORACLE_NET ao invés do Oracle, resolveu rsrs. Estranho não? Obrigado pela ajuda!
  10. nicolasrds

    ERROR ORA-12520: TNS:listener não está disponível

    Olha como está meu Tnsnames.ora # tnsnames.ora Network Configuration File: /bancos/oracle11gR2/dbhome_1/network/admin/tnsnames.ora # Generated by Oracle configuration tools. ORACLE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = servidor)(PORT = 1521)) (CONNECT_DATA = (SERVER = SHARED) (SERVICE_NAME = ORACLE) ) )
  11. Boa tarde, Estou com o erro (ORA-12520: TNS:listener could not find available handler for requested type of server) no servidor(Linux) onde foi instalado o oracle. O erro é apresentado quando tento realizar ações como Importar e Exportar um Schema. De outra máquina consigo realizar normalmente via Rede. Porém local não estou conseguindo e preciso realizar direto do servidor. Meus Listener está ativo, e mesmo assim localmente não funciona. root@servidor]# lsnrctl status LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 28-APR-2015 16:03:30 Copyright (c) 1991, 2009, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=servidor)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 20-APR-2015 07:46:26 Uptime 8 days 8 hr. 17 min. 5 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /bancos/oracle11gR2/dbhome_1/network/admin/listener.ora Listener Log File /bancos/oracle11gR2/diag/tnslsnr/servidor/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=bd02)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0))) Services Summary... Service "oracle" has 1 instance(s). Instance "oracle", status READY, has 1 handler(s) for this service... Service "oracleXDB" has 1 instance(s). Instance "oracle", status READY, has 1 handler(s) for this service... The command completed successfully Podem me ajudar ? Obrigado!
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.