Pesquisar na Comunidade
Mostrando resultados para as tags ''condicional''.
Encontrado 2 registros
-
[Resolvido] Retornar resultados de case em um novo atributo
igor.js167 postou um tópico no fórum Oracle
Boa tarde, No banco de dados tenho as informações a seguir, em diferentes tabelas: Acesso, Dose prescrita, tempo e volume. Preciso, de acordo com essas informações, calcular dois valores chamados bolus e rate seguindo uma condicional. O problema é como vou retornar estes dois valores, se não tem atributo onde eu possa inseri-los? Eu deveria criar uma nova tabela pra eles? Existe como retornar estes atributos sem ter de mexer em nenhuma tabela? O código atual que tenho, é: select a.nr_atendimento ATENDIMENTO, obter_nome_pf_atend(a.nr_atendimento) NOME, obter_data_nascto_pac_atend(a.nr_atendimento) NASCIMENTO, 'DOSE: ' || decode(a.qt_dose,',5','2.500 UI','1','5.000 UI','1,5','7.500 UI','2','10.000 UI','2,5','12.500 UI','3','15.000 UI','3,5','17.500 UI', '4','20.000 UI','4,5','22.500 UI','5','25.000 UI','5,5','27.500 UI','6','30.000 UI') DOSE, 'VOLUME: ' || a.qt_volume || ' ml' VOLUME, obter_desc_material(a.cd_material) MEDICAMENTO, d.qt_hora_min_sessao TEMPO, e.nr_seq_tecnica ACESSO -- Inserir aqui condicionais para cálculo de BOLUS e RATE from CPOE_material a, atend_paciente_unidade b, hd_escala_dialise c, cpoe_dialise d, hd_acesso e where a.cd_material = 49749 and a.nr_atendimento = b.nr_atendimento and d.nr_atendimento = b.nr_atendimento and obter_cd_pes_fis_atend(b.nr_atendimento) = c.cd_pessoa_fisica and b.dt_saida_unidade is null and a.dt_liberacao is not null and a.dt_suspensao is null and d.dt_liberacao is not null and d.dt_suspensao is null and c.dt_fim is null and e.cd_pessoa_fisica = obter_pessoa_atendimento(b.nr_atendimento,'C') and e.ie_adequado = 'S' and e.dt_perda_retirada is null and c.nr_seq_turno = :turno and c.nr_seq_escala = :escala E as condicionais que quero inserir é mais ou menos assim: SE acesso arteriovenoso então: se dose_prescrita = 2500 então bolus = volume e rate = '-' se dose_prescrita = 5000 então: se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 6,0 e rate = 1,6 se tempo = 3:30h ou 3:35 então Bolus = 6,0 e rate = 1,3 se tempo = 4:00 ou 4:05h então bolus = 6,0 e rate = 1,1 se dose_prescrita = 7500 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 8,0 e rate = 2,8 se tempo = 3:30h ou 3:35 então Bolus = 8,0 e rate = 2,3 se tempo = 4:00 ou 4:05h então bolus = 8,0 e rate = 2,0 se dose_prescrita = 10000 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 10,0 e rate = 4,0 se tempo = 3:30h ou 3:35 então Bolus = 10,0 e rate = 3,3 se tempo = 4:00 ou 4:05h então bolus = 10,0 e rate = 2,9 se dose_prescrita = 12500 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 11,0 e rate = 5,6 se tempo = 3:30h ou 3:35 então Bolus = 11,0 e rate = 4,7 se tempo = 4:00 ou 4:05h então bolus = 11,0 e rate = 4,0 se dose_prescrita = 15000 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 13,0 e rate = 6,8 se tempo = 3:30h ou 3:35 então Bolus = 13,0 e rate = 5,7 se tempo = 4:00 ou 4:05h então bolus = 13,0 e rate = 4,9 se dose_prescrita = 30000 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 23,0 e rate = 14,8 se tempo = 3:30h ou 3:35 então Bolus = 23,0 e rate = 12,3 se tempo = 4:00 ou 4:05h então bolus = 23,0 e rate = 10,6 se não então null SE acesso cateter então: se dose_prescrita = 2500 então bolus = volume e rate = '-' se dose_prescrita = 5000 então: se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 6,0 e rate = 1,3 se tempo = 3:30h ou 3:35 então Bolus = 6,0 e rate = 1,1 se tempo = 4:00 ou 4:05h então bolus = 6,0 e rate = 1,0 se dose_prescrita = 7500 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 8,0 e rate = 2,3 se tempo = 3:30h ou 3:35 então Bolus = 8,0 e rate = 2,0 se tempo = 4:00 ou 4:05h então bolus = 8,0 e rate = 1,8 se dose_prescrita = 10000 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 10,0 e rate = 3,3 se tempo = 3:30h ou 3:35 então Bolus = 10,0 e rate = 2,9 se tempo = 4:00 ou 4:05h então bolus = 10,0 e rate = 2,5 se dose_prescrita = 12500 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 11,0 e rate = 4,7 se tempo = 3:30h ou 3:35 então Bolus = 11,0 e rate = 4,0 se tempo = 4:00 ou 4:05h então bolus = 11,0 e rate = 3,5 se dose_prescrita = 15000 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 13,0 e rate = 5,7 se tempo = 3:30h ou 3:35 então Bolus = 13,0 e rate = 4,9 se tempo = 4:00 ou 4:05h então bolus = 13,0 e rate = 4,3 se dose_prescrita = 30000 então se tempo = 2:00h, 2:05h, 2:30h ou 2:35h então Bolus = volume e rate = '-' se tempo = 3:00h ou 3:05 então Bolus = 23,0 e rate = 12,3 se tempo = 3:30h ou 3:35 então Bolus = 23,0 e rate = 10,6 se tempo = 4:00 ou 4:05h então bolus = 23,0 e rate = 9,3 Atenciosamente, Igor- 7 respostas
-
- oracle
- condicional
-
(e mais 1 )
Tags:
-
visualg Existe uma maneira de simplificar mais esse meu algoritimo?
danielzamignani postou um tópico no fórum Algoritmos & Outras Tecnologias
Bom dia galera! Então, eu fiz esse algoritimo para resolver um exercicio (Faça um Programa que leia três números e mostre-os em ordem decrescente). Ele esta funcional, tudo certinho(eu acho). O que eu realmente queria saber é se existe uma forma de eu simplificar ele utilizando apenas as estruturas condicionais ou se dessa forma que eu fiz já é o mais simples possivel ? Valeu pela atenção pessoal!!! Segue o codigo criado no visualg //Faça um Programa que leia três números e mostre-os em ordem decrescente algoritmo "ex009" var n1, n2, n3: inteiro inicio escreva("Primeiro numero: ") leia(n1) escreva("Segundo numero: ") leia(n2) escreva("Terceiro numero: ") leia(n3) se (n1<n2) e (n2<n3) entao escreva(n3,n2,n1) senao se (n1<n3) e (n3<n2) entao escreva(n2,n3,n1) senao se (n2<n1) e (n1<n3) entao escreva(n3,n1,n2) senao se (n2<n3) e (n3<n1) entao escreva(n1,n3,n2) senao se (n3<n1) e (n1<n2) entao escreva(n2,n1,n3) senao se (n3<n2) e (n2<n1) entao escreva(n1,n2,n3) fimse fimse fimse fimse fimse fimse fimalgoritmo-
- condicional
- entao
-
(e mais 2 )
Tags: