Fala galera !
(MySQL)
Estou tentando aplicar um update no ultimo registrando lançado em uma tabela, porém quando tento, o update está sendo aplicado no primeiro registro, alguém poderia me ajudar ?
SQL
UPDATE bd_sgn.tb_mudancas_atleta SET mudatl_altura=1.80, mudatl_peso=5.0, mudatl_bf=21.0, mudatl_mm=34.5, mudatl_gasto_energetico_repouso=1950.0, mudatl_objetivo_cod=1, mudatl_data_mudanca='2016-01-01' where mudatl_peratl_cod=1 order by mudatl_peratl_cod desc limit 1;
Já tentei “asc” ao invés do desc (apenas a nível de curiosidade, teoricamente deveria ser desc) mas não obtive exito, o que estou errado ?
Vale salientar que existe vários registro para mudatl_peratl_cod=1, gostaria de atualizar apenas o ultimo, alguma luz ?
Opa parceiro, obg pela atenção.
Então, ela não é de auto increment não e tbm não possui chave primária, as características da coluna “mudatl_peratl_cod” é não poder receber valores nulos e é do tipo inteiro.
select * from bd_sgn.tb_mudancas_atleta order by mudatl_peratl_cod=1 desc;
Note que a ultima deveria ser 1 1.75 100 35 35 1950 1 2016-01-01
Quando tento aplicar o
**UPDATE bd_sgn.tb_mudancas_atleta SET mudatl_altura=1.80, mudatl_peso=5.0, mudatl_bf=21.0, mudatl_mm=34.5, mudatl_gasto_energetico_repouso=1950.0, mudatl_objetivo_cod=1, mudatl_data_mudanca='2016-01-01' where mudatl_peratl_cod=1 order by mudatl_peratl_cod desc limit 1;**
Ele muda
Opa amigo, obg pela atenção.
Então, no caso essa sql ai será jogada em um atributo de uma classe DAO, esse “1” seria um “?”, ou seja, não será sempre 1 não, estou tentando arrumar a sql para depois começar a usa-la na minha classe DAO.
Não é isso que quis dizer. Se tens vários registos com mudatl_peratl_cod=1, a ordenação por esse campo não te garante que é devolvido o último registo. A questão é… como é que sabes qual é o último registo?
Poxa kra, é verdade, eu estava usando a lógica errada, vc tem razão, consegui fazer o que queria aqui, usando desc limit referente a coluna date, porém aqui alterei para datetime, para caso tenha mais de uma alteração no mesmo dia.
Muito obg por esclarecer minhas ideias.
Vlw mesmo
:-]