2013-07-14 2 views
3

LAST_INSERT_ID()AUTO_INCREMENT 속성이있는 열의 마지막 삽입 된 ID를 반환합니다.MySQL의 AUTO_INCREMENT 열에서 마지막으로 삽입 된 ID 가져 오기

첫 번째로 이없는 열에서 마지막으로 삽입 된 ID를 가져 오는 방법이 있습니까 속성입니다.

예인 경우 마지막으로 삽입 한 ID는 어떻게 받습니까?

어떤 아이디어라도 좋을 것입니다.

+0

LAST_INSERT_ID는 세션에 따라 달라집니다. – Strawberry

답변

5

이 항상 보장하지만 MAX()를 사용할 수 없음 : 사용자가 동시에 여러 트랜잭션이 발생하는 경우이 보장되지 않을 수 있습니다

SELECT MAX(ID) FROM YourTable 

이유는,이 잠재적으로 잘못된 ID를 선택할 수 있습니다 .. .

LIMIT와 마찬가지로

, ORDER BY :

SELECT ID FROM YourTable ORDER BY ID Desc Limit 1 
1

당신의 ID가 기본 키입니다합니까?

보유하고있는 타임 스탬프 값을 확인할 수 있습니다.

실제로 자동 증가 또는 타임 스탬프없이 마지막으로 삽입 된 행을 가져 오는 방법이 없습니다. 메인 테이블을 변경할 수없는 경우 삽입 한 ID에 다른 테이블 및 맵 자동 증가를 생성 할 수 있습니다.

+0

예, 기본 키입니다. 자세한 내용은 첫 번째 게시물에 의견을주십시오. –

관련 문제