Jump to content
Querendo_ser_Nerd

Retornar um único valor coluna

Recommended Posts

Boa tarde,

 

Prezado, estou realizando uma consulta select , na qual existe uma coluna derivada de um subselect que me retorna um total, porém na consulta em si existe vários itens e quando os itens são do mesmo código de fornecedor a coluna repete vairas vezes, exemplo,

 

 

select coluna 1 , coluna 2 coluna 3 ,( select total from ... TABELA 2  WHERE COLUNA 1 = TABELA1.COLUNA 1 ) as total

from TABELA 1 

 

resultato

 

COLUNA 1    ||  COLUNA 2 || COLUNA 3 || TOTAL

     10                  PRODUTO           A               20

     12                  PRODUTO2         A               20

     13                  PRODUTO3         B               30

     14                  PRODUTO4         B               30

 

Precisamos que sai assim;

 

COLUNA 1    ||  COLUNA 2 || COLUNA 3 || TOTAL

     10                  PRODUTO           A               null

     12                  PRODUTO2         A               null

                                                                          20

     13                  PRODUTO3         B               null

     14                  PRODUTO4         B               null

                                                                           30

 

obrigado.

 

Share this post


Link to post
Share on other sites

Creio que por sql não , a solução deveria ficar na montagem do relatório

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By miniaccio
      CREATE TABLE mensagem (
          codmensagem INTEGER PRIMARY KEY,
          conteudo VARCHAR,
          codusuorigem INTEGER,
          codusudestino INTEGER,
          status INTEGER,
          CONSTRAINT codusuorigem_fk FOREIGN KEY(codusuorigem) REFERENCES amigos(codusua),
          CONSTRAINT codusudestino_fk FOREIGN KEY(codusudestino) REFERENCES amigos(codusub)
          );
       
      Relatório de erros -
      ORA-00906: parêntese esquerdo não encontrado
      00906. 00000 -  "missing left parenthesis"
    • By devenr
      E ai pessoal!
       
      Estou desenvolvendo uma procedure e estou com dificuldade para validar um campo.
      É seguinte, preciso verificar se o campo contem um registro, se contem, realiza o update concatenando com o registro de entrada e se não conter registro, apenas faça o update com o registro de entrada.
      Obs: Esse campo é separado por virgula.
       
      Segue o meu código:
      CREATE OR REPLACE PROCEDURE SP_VINCULO (     P_COD_MATRIZ IN TB_EDIEXT_PERFIL.COD_MATRIZ%TYPE,     P_CONCIL IN TB_EDIEXT_PERFIL.CONCIL%TYPE,     P_ID_MBX IN TB_EDIEXT_PERFIL_MBX.ID_MBX%TYPE,     P_ID_CONCIL INT,     P_DIR_DEST VARCHAR2,     P_PROTOCOLO VARCHAR2 ) IS     V_EC TB_EDIEXT_PERFIL.CONCIL%TYPE;     V_REG_CONCIL NUMBER(1);     V_CONCIL_EC VARCHAR(10);     CONTEM_EC EXCEPTION;     CONTEM_REG EXCEPTION;          CURSOR VERIFICA_EC IS     SELECT P_CONCIL     FROM TB_EDIEXT_PERFIL     WHERE CONCIL = 'EC';              CURSOR VERIFICA_CONCIL IS     SELECT CONCIL     FROM TB_EDIEXT_PERFIL     WHERE CONCIL = 'EC';      BEGIN     INSERT INTO TB_EDIEXT_PERFIL_MBX          VALUES      (PERFIL_MBX.nextval, (SELECT ID FROM TB_EDIEXT_PERFIL WHERE COD_MATRIZ = P_COD_MATRIZ),      (SELECT ID FROM TB_EDIEXT_MBX WHERE MBX = 'MB'||P_CONCIL));          IF P_PROTOCOLO = 'SFTP' THEN         INSERT INTO TB_EDIEXT_PERFIL_SFTP                 VALUES          (PERFIL_SFTP.nextval, (SELECT ID FROM TB_EDIEXT_PERFIL WHERE COD_MATRIZ = P_COD_MATRIZ),                                                                                   P_ID_CONCIL,                                                                                    P_DIR_DEST);         UPDATE TB_EDIEXT_PERFIL          SET SFTP = 1          WHERE COD_MATRIZ = P_COD_MATRIZ;          ELSE         INSERT INTO TB_EDIEXT_PERFIL_CD                 VALUES          (PERFIL_CD.nextval, (SELECT ID FROM TB_EDIEXT_PERFIL WHERE COD_MATRIZ = P_COD_MATRIZ),                                                                                 P_ID_CONCIL,                                                                                  P_DIR_DEST,                                                                                 NULL);         UPDATE TB_EDIEXT_PERFIL          SET CD = 1          WHERE COD_MATRIZ = P_COD_MATRIZ;     END IF;               OPEN VERIFICA_EC;         FETCH VERIFICA_EC INTO V_EC;              IF P_CONCIL = 'EC' THEN         RAISE CONTEM_EC;     END IF;           SELECT CASE WHEN EXISTS (         SELECT CONCIL FROM TB_EDIEXT_PERFIL WHERE CONCIL LIKE P_CONCIL)             THEN 1             ELSE 0     END AS VERIFICA_CONC INTO V_REG_CONCIL     FROM DUAL;          IF V_REG_CONCIL = 1 THEN         RAISE CONTEM_REG;     END IF;    OPEN VERIFICA_CONCIL;     FETCH VERIFICA_CONCIL INTO V_CONCIL_EC;      -- NESTA ETAPA ESTOU VERIFICANDO SE O CAMPO É = 'EC', SE FOR ELE FAZ APENAS O UPDATE SUBSTITUINDO PARA O P_CONCIL DE ENTRADA     IF V_CONCIL_EC = 'EC' THEN         UPDATE TB_EDIEXT_PERFIL         SET CONCIL = P_CONCIL         WHERE COD_MATRIZ = P_COD_MATRIZ; -- AQUI DEVERIA FAZER O UPDATE CONCATENANDO O P_CONCIL, MAS NÃO ESTÁ FUNCIONANDO.     ELSE          UPDATE TB_EDIEXT_PERFIL         SET CONCIL = (SELECT CONCIL FROM TB_EDIEXT_PERFIL          WHERE COD_MATRIZ = P_COD_MATRIZ)||','||P_CONCIL          WHERE COD_MATRIZ = P_COD_MATRIZ AND ROWNUM = 1;     END IF;                      EXCEPTION         WHEN CONTEM_EC             THEN DBMS_OUTPUT.PUT_LINE('NÃO É PERMITIDO VINCULAR '||V_EC);         WHEN CONTEM_REG             THEN DBMS_OUTPUT.PUT_LINE('ERRO! A matriz ja possui vinculo com a conciliadora.');       CLOSE VERIFICA_EC; CLOSE VERIFICA_CONCIL; END; /  
      O que está ocorrendo é o seguinte, ele está substituindo o campo CONCIL sempre com o parâmetro de entrada P_CONCIL e a concatenação não está funcionando.
       
      Alguém sabe o porque? 
       
      Obrigado desde já!
    • By asacap1000
      Salve Galera, tenho uma tabela no banco de dados que estão salvos os dados de fotos armazenadas, uma das tabela consta o caminho das mesmas.
      Hoje consigo buscar estas fotos, mostrar na tela do site tudo certo. Porém estou precisando adicionar um botão para o envio de email com estas imagens em anexos.
      Saberiam me dizer como posso fazer isso?
      Tenho um formulário com os campos Remetente: Nome / Email  - Destinatário: Nome / Email
      e o campo de input file porém as imagens não carregam. Fiz um teste assim:
       
      <div class="input_fields_wrap"> <?php while ($row = oci_fetch_object($stmt2)) { ?> <div><input type="file" name="fotos[]" value="<?=$string3?>" multiple></div> <? }?> </div> Ele carrega assim até lista a quantidade de imagens na consulta mas não carrega as imagens.
       

    • By José Peixoto
      Olá,
       
      há alguma forma de fazer uma trigger só ser executada depois que a outra executar? 
       
      Por exemplo: a trigger2 só é disparada quando a trigger1 fizer o commit das informações.
       
      Obrigado desde já :)
    • By asacap1000
      Salve galera. estou com uma zica aqui e não vai.
      Tenho um servidor WEB final IP final 120 neste servidor eu acesso um banco de dados de outro servidor 122, tem uma tabela com fotos e precisaria mostrar estas fotos na intranet. porém ele me mostra o caminho mas não mostra a imagem.
       
      Na Tabela está sendo salvo desta forma:
      Z:/Avarias/FOTOS/Alfandegado/2020/01.%20JANEIRO/14.01.2020/AVARIA%20CLIENTE%20CN=%20191234%20(2).JPG
       
      Chamei ele na tela desta forma:
      <?php ociexecute($stmt2,OCI_DEFAULT); while ($row = oci_fetch_object($stmt2)) { $string = OCIResult ($stmt2 ,1); ///link da avaria $avaria = OCIResult ($stmt2 ,2); ///titulo da avaria ?> <a href="<?=$string ?>" width="20%" height="30%" data-lightbox="gallery" > <button type="button" class="btn btn-dark active" data-toggle="modal" data-target="#modalExemplo"> <img src="<?=$string?>" width="160" height="100" class="rounded" title="<?=$avaria?>"> <br> </button> Na tela aparece desta forma:

       
      Se eu clicar na imagem fica assim apenas carregando:
       

       
      Se eu mandar abrir em nova guia a imagem aparece essa mensagem:

      Se eu copiar o link com botão direito e abrir no navegador ela abre normalmente.
       
      Ah lembrando que são tres servidores 120 web, 122 banco de dados, 128 as fotos onde salva como mapeamento Z://
      Alguem teria alguma idéia de como chamar estas fotos???
       
×

Important Information

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