Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Desejo retornar apenas os últimos registros incluídos após uma inserção. Como posso fazer isso no mysql?
Bom dia. Caso pretenda apenas os ultimos 2(2 foi um numero opcional) pode usar o LIMIT = 2
;)
Não é bem o que desejo.
O que quero é que logo após uma inserção, sei lá, de 1200 registros, eu consiga recuperar apenas aqueles 1200 registros previamente inseridos na tabela.
SELECT * FROM tabela ORDER BY campo_id DESC LIMIT 1200
>
SELECT * FROM tabela ORDER BY campo_id DESC LIMIT 1200
Detalhe: eu não sei quais foram os últimos registros e quantos foram inseridos. Apenas queria recuperalos.
Exemplo: Ultimos usuários cadastrados logo após a inserção de usuários na tabela.
mysqli_insert_id() // http://www.w3schools.com/php/func_mysqli_insert_id.asp
Retorna o último ID da ultima query (retorna somente os que foram gerados via AUTO_INCREMENT)
A partir disso, com o php você pode fazer uma coisa do tipo...
$query = "INSERT INTO...";
var_dump(mysqli_insert_id($query));Amigo, da forma como mostrei acima, você já está pegando os últimos 1200 registros em ordem decrescente, ou seja, a cada registro inserido você o terá no topo e assim sucessivamente até chegar à 1200
Podem fechar o tópico. Estava trabalhando com java e bolei uma classe que resolve meu problema. Essa classe controla isso.
SELECT * FROM tabela ORDER BY campo_id DESC