Jump to content

CaioMoreti

Members
  • Content count

    2
  • Joined

  • Last visited

Everything posted by CaioMoreti

  1. @EdCesar, muito obrigado!!! Ainda desconhecia o comando INNER JOIN! Funcionou perfeitamente! Obrigado, vou dar esse post como resolvido!
  2. Saudações a todos do fórum. Como todos que começam a aprender MySQL, nos deparamos com problemas relativamente simples mas não conseguimos resolver. Criei a tabela INFO_PACOTES que armazena informações de pacotes que trafegam na minha rede. Os arquivos são processados via shell e armazenados somente o MAC de origem e o tamanho do pacote. mysql> desc INFO_PACOTES; +-------------------------+-------------------+--------+------+--------------+--------+ | Field | Type | Null | Key | Default | Extra | +-------------------------+-------------------+--------+------+--------------+--------+ | mac_origem | char(17) | YES | | NULL | | | tamanho_frame | decimal(5,0) | YES | | NULL | | +-------------------------+-------------------+--------+------+--------------+--------+ Como uma rede normal, diversos dispositivos são conectados e monitorados. Assim, haverão diversos dispositivos com diferentes MAC's. Criei a tabela CONHECIDOS que está descrita abaixo. A única coisa que preciso é somar os valores da coluna tamanho_frame da tabela INFO_PACOTES agrupado por diferentes "mac_origem" e o resultado das somas atualizar o campo trafego_total da tabela CONHECIDOS. +--------------------+---------------------+--------+------+-----------+--------+ | Field | Type | Null | Key | Default | Extra | +--------------------+---------------------+--------+------+-----------+--------+ | mac | char(17) | NO | PRI | NULL | | |trafego_total | decimal(20,0) | YES | | NULL | | +--------------------+---------------------+--------+------+-----------+--------+ Crieia seguinte sentença abaixo: UPDATE CONHECIDOS, INFO_PACOTES SET trafego_total = (SELECT sum(tamanho_frame) FROM INFO_PACOTES GROUP BY INFO_PACOTES.mac_origem) WHERE CONHECIDOS.mac=INFO_PACOTES.mac_origem; Ao final da sentença, o select resulta em mais de uma linha, gerando o erro: ERROR 1242 (21000): Subquery returns more than 1 row Alguém sabe me dizero que estou errando? Obrigado!
×

Important Information

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