Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

luizeduardo.android

Junção de multiplos resultados na consulta SQL

Recommended Posts

Boa tarde a todos.

Esta é a minha primeira vez neste forum e gostaria de saber se é possível transformar a seguinte consulta como exemplo:

SELECT ('11','12') FROM DUAL;

para que o resultado seja: 1112, ou seja retirar a vírgula e as aspas entra os números, tentei usar o "SUBSTR", mas não aceita pois entende que existe mais de um "campo" na consulta.

Exemplo do comando no oracle:

select SUBSTR(SUBSTR(('11','12'),',',''),'''','') from dual;

erro: ORA-00907: parêntese direito não encontrado

Procurei nos demais tópicos mas não encontrei.

Desde já agradeço e aguardo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade acho que não me expressei bem, o que preciso é que uma consulta que traga mais de um resultado, sendo que os dados virão entre aspas e separados por vírgula, veja exemplo a baixo:

select codfornec from pcprodut where codprod in (11025,11026,11027);

Resultado no banco:

CODFORNEC

'11','12'

assim precisaria que o resultado já viesse dessa forma:
CODFORNEC

1112

ou seja sem aspas e sem vírgulas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente

select regexp_replace(codfornec,'[^[:digit:]]') codfornec 
from pcprodut where codprod in (11025,11026,11027);

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por otaviinn
      Boa noite pessoal, tudo bem?
         É o seguinte, estou iniciando na área de SQL (inclusive já peço desculpas pelos possíveis erros) e trabalho montando relatórios para um sistema via SQL.
      Estou montando um relatório que envolve algumas tabelas e preciso somar o valor de uma coluna, ocorre que quando uso a função SUM no select com as junções das tabelas ele não me retorna a soma dos valores, se somo sem as junções das tabelas ele me retorna perfeitamente, segue abaixo o script:
       
      Script que trás a soma corretamente:
       
      SELECT SUM(VALOR)
      FROM sophia.MOVFIN 
      WHERE VENDA = '14617' AND PARCELA = '2'
      Resultado
      ---------------------------------------
      329.0000
      (1 linha(s) afetadas)
       
      Script onde a soma não funciona corretamente:
                                                 
      SELECT DISTINCT
      T.CODIGO As CODTURMA, 
      F.NOME As NOME,
      F.CPF As CPF,
      T.NOME As TURMA,
      S.DESCRICAO As SEGMENTO,
      F.CODEXT As RA,
      F.OBSERVACOES As OBSERVAÇÃO,
      case M.STATUS 
      WHEN 0 then 'Ativa'
      WHEN 1 then 'Trancada'
      WHEN 2 then 'Cancelada'
      WHEN 3 then 'Transferida'
      WHEN 4 then 'Evadida'
      WHEN 5 then 'Concluída' end 
      as STATUS,
      TAB.DESCRICAO1 As INDICADOPOR,
      SUM(MEN.VALOR) As MENSALIDADE
      FROM SophiA.TURMAS T
      LEFT join sophia.MATRICULA M on M.TURMA_REGULAR = T.CODIGO
      LEFT join sophia.FISICA F on F.CODIGO = M.FISICA
      LEFT join sophia.DADOSPF DF on DF.FISICA = F.CODIGO
      LEFT join sophia.SEGMENTOS S on S.CODIGO = DF.SEGMENTO
      LEFT join sophia.TAB_DESCRICAO_DADOS TAB on TAB.FISICA = F.CODIGO
      LEFT join sophia.MOVFIN MOV ON MOV.VENDA = M.VENDA and MOV.PARCELA = '2'
      LEFT join sophia.MOVFIN MEN ON MEN.TITULO = MOV.TITULO
      WHERE T.CODIGO = '2214' 
      GROUP BY 
      T.CODIGO,
      F.NOME,
      F.CPF,
      T.NOME,
      S.DESCRICAO,
      F.CODEXT,
      F.OBSERVACOES,
      M.STATUS, 
      TAB.DESCRICAO1,
      MEN.VALOR                                                                                                                                                                                                                                                                                                                                                                
         Desta forma, basicamente trás como resultado os três registros (mesma quantidade de registro que existe na tabela para estas condições)  com números bem diferentes do registro real, não consegui associar os números a uma referencia para entender o que ocorre. Talvez algo que seja relevante mencionar é que pode-se conter números negativos nos registros, inclusive nessas colunas deste duas querys existem números negativos. 
       
      Agradeço muito a atenção de todos! :) 
    • Por maurohpg
      Bom dia pessoal, estou fazendo um upload múltiplo de imagens, mais estou com um pequeno problema, estou testando e não
      está sendo feito o upload, e não me mostra mensagem de erro algum, revisei o código ja várias vezes e não consigo encontrar
      um erro. Por acaso alguém tem ideia do que pode estar ocorrendo?
      <? include("../config.php"); include("verifica.php"); if($acao ==''){ echo '<form action="album_add.php?acao=add&id='.$id.'" method="post" enctype="multipart/form-data" name="form1"> <p align="center">Imagem<br> <input type="file" name="foto[]" multiple/> </p> <p align="center">Pequena descri&ccedil;&atilde;o<br> <input name="desc_" type="text" size="60" maxlength="250"> </p> <p align="center"> <input type="submit" name="Submit" value="Enviar"> </p> </form>'; }// FECHA principal ?> <?php if(isset($_POST['enviar']) == 'sim'){ $i = 0; foreach($_FILES['foto'] as $k=>$v) { if(!empty($_POST['desc_'][$i]) && !empty($_FILES['foto']['name'])) { // Largura máxima em pixels $largura = 640; // Altura máxima em pixels $altura = 480; // Tamanho máximo do arquivo em bytes $tamanho = 10000; // Verifica se o arquivo é uma imagem $tipos_permitidos = array('pjpeg'=>'image/pjpeg', 'jpeg'=>'image/jpeg', 'jpg'=>'image/jpg', 'gif'=>'image/gif', 'bmp'=>'image/bmp', 'png'=>'image/png' ); foreach($tipos_permitidos as $k=>$v) { if($_FILES['foto']['type'][$i] == $v) { $ext[1] = $k; break; } } if(!isset($ext)) { $error[1] = 'Extensão do arquivo não permitida: ' .$_FILES['foto']['type'][$i]; } // Pega as dimensões da imagem $dimensoes = getimagesize($_FILES['foto']['tmp_name'][$i]); // Verifica se a largura da imagem é maior que a largura permitida if($dimensoes[0] > $largura) { $error[2] = "A largura da imagem não deve ultrapassar ".$largura." pixels"; } // Verifica se a altura da imagem é maior que a altura permitida if($dimensoes[1] > $altura) { $error[3] = "Altura da imagem não deve ultrapassar ".$altura." pixels"; } // Verifica se o tamanho da imagem é maior que o tamanho permitido if($_FILES['foto']['size'][$i] > $tamanho) { $error[4] = "A imagem deve ter no máximo ".$tamanho." bytes"; } if (!isset($error)) { // Gera um nome único para a imagem $nome_imagem = md5(uniqid(time())) . "." . $ext[1]; // Caminho de onde ficará a imagem $caminho_imagem = "../uploads/album/" . $nome_imagem; // Faz o upload da imagem para seu respectivo caminho move_uploaded_file($_FILES['foto']["tmp_name"][$i], $caminho_imagem); include("resizer_foto_album.php"); $sql = mysql_query("INSERT INTO fotos (id_imovel, foto, obs_foto) VALUES ('$id', '$imagem_nome', '$desc_')") or print(mysql_error()); } else { echo 'Erro(s) encontrado(s)<br>'; foreach($error as $ek=>$ev) { echo $ev. '<br>'; } } } $i++; } } ?>  
    • Por Asriel
      Olá, este é meu código, ele faz um upload múltiplo de imagens porem, ele faz o move upload de apenas 2 arquivos, e cadastra os mesmo retidas vezes no banco, alguém poderia me dar uma solução para o upload continuar de mover cada uma das imagens.
      Código:
      for ($i = 0; $i < count($arquivo['name']); $i++) { $dirf = $dir . md5(time($arquivo['name'][$i])) . '.png'; if (move_uploaded_file($arquivo['tmp_name'][$i], $dirf)) { $sqli3 = "insert into imagem(codimagem, caminho, codevento) values (null, '$dirf', '$cod')"; $res2 = mysqli_query($conexao, $sqli3) or die(mysqli_error()); echo "<script>alert('Evento Cadastrado com sucesso!');</script>"; } else { echo "<script>alert('Erro ao Cadastrar!');</script>"; } } }
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.