내가 MAX를 사용하여 근본적인 문제에 봉착 것 같다 -이 행의 내용을 혼합 것, 나는 생각한다.MySQL의 최대 기능을 혼합 행
id rev state
1 100 pass
1 99 fail
1 98 fail
결과가 있어야한다 :
이
은보기입니다id rev state
1 100 **pass**
하지만 당신은 총을 가진 GROUP BY
절을 필요
id rev state
1 100 **fail**
SELECT r.id, r.state, MAX(r.revision)
FROM VIEW_data r
WHERE r.id=1
이보십시오. 나는 여전히 쿼리가 내가 행의 내용을 섞어 놓는 이유를 이해하지 못한다. mysql 일 뿐인가요? – glutz
그것은 너무 어쩌면, SQLite는 MySQL의 일이다 @glutz. 예를 들어 SQL Server에서 원래 쿼리를 시도한 경우 _r.id와 같은 오류는 GROUP BY_에 포함되어 있지 않으므로 SELECT 목록에 유효하지 않습니다. SELECT의 열은 GROUP BY에 있어야합니다. MySQL의 기본 동작에서는 필요하지 않으며, 행을 명확하게 선택할 수 없기 때문에 임의의 값을 선택하여 그룹을 채 웁니다. MySQL을 집계 함수를 배우는 사람들은 종종 등 오라클, MSSQL, 포스트 그레스, ... –