Ir para conteúdo
saholiveira

Update de várias linhas com valores diferentes

Recommended Posts

Eu preciso atualizar várias linhas de uma coluna de uma tabela com valores advindos de uma outra tabela para poder criar o relacionamento entre elas com a chave estrangeira. 

Estou utilizando o Kettle para fazer a transformação e a carga dos dados no banco.

 

Estou fazendo a tentativa da seguinte maneira: 

UPDATE descricao_geral
SET id_relevo = (SELECT id_relevo FROM relevo 
ORDER BY id_relevo DESC
LIMIT 110)
ORDER BY id_descricao DESC
LIMIT 110

O erro que é retornado: Subquery returns more than 1 row

 

Havia tentado anteriormente da seguinte maneira:

UPDATE descricao_geral
SET id_relevo = ?
ORDER BY id_descricao DESC
LIMIT 110

Dessa forma funciona, mas todas as linhas recebem o primeiro e o mesmo valor, o que não é o que eu preciso.

 

Alguém tem alguma sugestão de como posso fazer isso?

Agradeço desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por AllysonSouza
      Boa noite, to precisando de ajuda, eu to listando os dados direto do banco de dados em um tabela, so que ela faz isso linha por linha como é feito, eu queria que ele listasse duas tabelas na mesma pagina, só que dando continuidade da busca do banco de dados, exemplo. ele busca 50 resultados no banco, ai ele pega o maximo de linhas possivel em uma tabela, e do outro lado da tela ele lista o restante dos dados...enfim, eis meu codigo, exibindo tudo em uma tabela só
      <?php $categoria = $_GET['categoria']; $sql = "SELECT p.id AS idProd, p.nome AS produto, p.largura, p.comprimento, p.estilo, p.valor, p.valorCompra, p.estoque, p.imagem, c.id AS idCat, c.nome AS categoria, p.vendidos, p.tipo, p.detalhe FROM produtos p INNER JOIN categorias c ON p.categorias_id=c.id WHERE c.id=$categoria ORDER BY p.nome, p.largura ASC"; $res = mysqli_query($con, $sql); $dados = mysqli_fetch_array($res); ?> <div class="panel-footer"> <table class="table table-bordered table-hover text-center"> <thead > <tr ><td colspan="5" style="text-align: center;"> <?php echo $dados['categoria']?></td></tr> </thead> <thead > <tr > <th width="250" class="text-center" >Nome</th> <th width="10" class="text-center">Tamanho</th> <th width="100" class="text-center">Valor</th> </tr> </thead> <tbody> <?php while($linha = mysqli_fetch_array($res)){ ?> <tr > <td > <?php echo $linha['produto']; echo " "; echo $linha['largura'] ; echo " "; echo $linha['detalhe']; echo" "; if($linha['estilo']==0){ echo ''; }else if($linha['estilo']==1){ echo '(Bruta)'; }else if($linha['estilo']==2){ echo '(Plainada)';}?> <label class='label label-danger'><?php if($linha['tipo'] == 0 ){ echo 'ML';}; ?></label> <label class='label label-primary'><?php if($linha['tipo'] == 1 ){ echo 'M²';}; ?></label> <label class='label label-warning'><?php if($linha['tipo'] == 2 ){ echo 'Peça';}; ?></label> <label class='label label-info'><?php if($linha['tipo'] == 3 ){ echo 'Duzia';}; ?></label> <label class='label label-success'><?php if($linha['tipo'] == 4 ){ echo 'KG';}; ?></label> </td> <td><?php if($linha['comprimento']==0){ echo '1 M '; }else if($linha['comprimento']==1){ echo '3 M'; }else if($linha['comprimento']==2){ echo '4 M'; }else if($linha['comprimento']==3){ echo '5 M'; }else if($linha['comprimento']==4){ echo '6 M'; }else if($linha['comprimento']==5){ echo ''; } ?></td> <td> <?php echo Conversor::realBancoParaUsuario($linha['valor']); ?> </td> </tr> <?php } ?> </tbody> </table> </div>  
    • Por Gemeons
      SELECT tabehist.HIST_Descricao, `vw_saldobancario`.`codigoHistorico`, (SELECT SUM(debitos + debitosPendentes) FROM vw_saldobancario WHERE mes = '1' AND `conta_bancaria_id` = '3' AND vw_saldobancario.codigoHistorico = tabehist.HIST_Codigo) AS 'mes1', `vw_saldobancario`.`conta_bancaria_id` FROM vw_saldobancario INNER JOIN tabehist ON vw_saldobancario.codigoHistoricod = tabehist.HIST_Codigo AND `ano` = '2018' AND `conta_bancaria_id` = '3' AND codigoHistorico < 500 GROUP BY codigoHistorico  
      A query e montada a partir dessa função aonde contem um for que vai montando o meses partir do que o usuário pede .
       
      { $dataInicio = (int)$dataInicio; $i = 0; $query = "SELECT tabehist.HIST_Descricao, `vw_saldobancario`.`codigoHistorico`, "; for ($i = $dataInicio ; $i <= $dataFim; $i++) { $query = $query. "(SELECT SUM(debitos + debitosPendentes) FROM vw_saldobancario WHERE mes = '{$i}' AND `conta_bancaria_id` = '{$contaBancaria}' AND vw_saldobancario.codigoHistorico = tabehist.HIST_Codigo) AS 'mes{$i}',"; } $query = $query. " `vw_saldobancario`.`conta_bancaria_id` FROM vw_saldobancario INNER JOIN tabehist ON vw_saldobancario.codigoHistorico = tabehist.HIST_Codigo AND `ano` = '{$ano}' AND `conta_bancaria_id` = '{$contaBancaria}' AND codigoHistorico < 500 GROUP BY codigoHistorico "; return $this->db->query($query)->result(); }  
    • Por fabio3050
      Bom dia, amigos não sou desenvolvedor estou desenvolvendo uma plataforma com um pessoal fora dos Brasil, mas não estou conseguindo explicar a melhor forma para fazer esse código será que podem me ajudar.
       
      Foi feito 2 botões onde esses botões precisa executar um campo dentro do mysql porque nesse campo vai vim Via API um PDP, e esse botão somente precisa executar esse campa para que gere esse PDF, alguém pode colocar de forma técnica para que eu posso enviar pra eles!
       
       
      Muito Obrigado
    • Por mbdec
      ola pessoal! 
      gostaria da ajuda de vocês para criar botões executando funções mysql.
      aqui esta a função mysql trazer o result set e fazer echo
      é um sistema de nutricionismo ele faz comparações no banco de dados, então queria criar botões para executar as açoes e "echo" para exibir os resultados 
      Tabela Alimento:
      Alimento_ID Nome


      Tabela Beneficios_Males Beneficios_Males_ID Nome Tipo('B','M') (Se é beneficio ou Males)   Tabela Alimento_Beneficios_Males Alimento_ID
      Beneficios_Males_ID     Por exemplo, trazer todos os alimentos e seus beneficions

      SELECT Alimento.*, Beneficios_Males.* FROM Alimento JOIN Alimento_Beneficios_Males USING (Alimento_ID) JOIN Beneficios_Males USING (Beneficios_Males_ID) WHERE Tipo = 'B';   Por exemplo, trazer todos os alimentos e seus males   SELECT Alimento.*, Beneficios_Males.* FROM Alimento JOIN Alimento_Beneficios_Males USING (Alimento_ID) JOIN Beneficios_Males USING (Beneficios_Males_ID) WHERE Tipo = 'M';   ____________________________              -     |botão para executar a ação|               label para o echo         label para o echo ____________________________              --------------------------          ---------------------------     |botão para executar a ação| ------------------------------------
×

Informação importante

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