테이블에서 마지막으로 추가 된 값을 선택하는 mysql 문을 쓰려고합니다. 테이블의 id 열은 자동 증가 값이므로 가장 쉬운 방법은 가장 높은 ID 값을 가진 행을 선택하는 것입니다.가장 큰 id 값을 가진 테이블 행 선택
누구든지이 작업을 수행 할 수 있는지 궁금합니다. 이 같은
뭔가 :
는 mysql_query ("SELECT * ID = 최대 (ID)를 테이블에서"
테이블에서 마지막으로 추가 된 값을 선택하는 mysql 문을 쓰려고합니다. 테이블의 id 열은 자동 증가 값이므로 가장 쉬운 방법은 가장 높은 ID 값을 가진 행을 선택하는 것입니다.가장 큰 id 값을 가진 테이블 행 선택
누구든지이 작업을 수행 할 수 있는지 궁금합니다. 이 같은
뭔가 :
는 mysql_query ("SELECT * ID = 최대 (ID)를 테이블에서"
MAX는이
시도처럼 사용할 수 없습니다 집계/그룹 기능입니다 이
SELECT *
FROM blog
ORDER BY id DESC LIMIT 1;
또는
SELECT *
FROM blog
where id=LAST_INSERT_ID();
,
또는
SELECT *
FROM blog
WHERE (id = (SELECT MAX(id) FROM blog LIMIT 1))
당신은 마지막으로 삽입 id.Hence을 찾기 위해 LAST_INSERT_ID()
을 사용할 수, 쿼리는 다음과 같이 할 수있다 :
SELECT *
FROM blog
where id=LAST_INSERT_ID();
가 쿼리 작업을하려면 다음과 같이해야 할 :
쿼리 실행 쓰기 후SELECT *
FROM blog
WHERE id=(
SELECT max(id) FROM blog
)
을 사용할 수 없지만, 지금은 1 행만 있습니다.하지만 여전히 반환해야하며 아무것도 반환하지 않습니다. 어떤 것도 얻지 못합니다. PHP 행에 액세스하려고 할 때 오류가 발생합니다. [ 'id'] – AnchovyLegend
업데이트 된 답변을 확인하십시오. –
:
$id = mysql_insert_id();
마지막으로 삽입 한 레코드의 ID를 가져옵니다.
응답에 감사드립니다. 나는 그것을 시도 할 것이다. 왜 내 쿼리가 작동하지 않는지 당신이 알고있는 이유가 있습니까? 나는 mySQL에 MAX 함수가 있다는 것을 알고있다 ...? – AnchovyLegend
MAX는 그룹 함수입니다. 어떤 이유로이 –