2014-10-09 3 views
0

다음과 같은 MySQL 테이블이 있습니다.열이 최대 인 데이터 선택

ID  X  Y Z 
    1  1  1 1 
    2  7  4 2 
    2  9  4 3 
    3  2  3 1 
    4  2  2 1 
    4  2  2 2 
    5  3  3 1 

(ID = 2 및 Y = 4 및 Z 최대) X를 선택하고 싶습니다. 이 코드를 사용했지만 MAX 기능을 추가 할 위치를 알 수 없습니다.

$check_x=mysql_query("SELECT X from Hamdun_Soft where ID='2' AND Y='4'"); 

MySQL을 도와주세요.

+2

'SELECT MAX (X) X FROM ...'은 (는) 찾고 계십니까? –

+0

고마워. 나는 최대 (Z)를 실제로 두는 곳을 찾는다. –

답변

2

이미 최대 Z.와 뿐만 아니라 하나의 X이있을 수 있습니다 경우 하위 쿼리와 함께 최대 Z

SELECT 
    X 
FROM 
    Hamdun_Soft 
WHERE ID = '2' 
    AND Y= '4' 
ORDER BY Z DESC 
LIMIT 1 

그리고 변형에 하나의 X 필요하면 바로 변이가 발생했습니다

SELECT 
    X 
FROM 
    Hamdun_Soft 
WHERE ID = '2' 
    AND Y = '4' 
    AND Z = (SELECT MAX(Z) FROM Hamdun_Soft WHERE ID = '2' AND Y = '4') 

PS

그리고 지금은 mysql_* 패밀리가 사용되지 않는 것을 잊지 마십시오. mysqli_* 또는 PDO을 사용할 수 있습니다.

+0

두 가지 방법으로 모두 설명해 주셔서 감사합니다. –

2
SELECT 
    X 
FROM 
    Hamdun_Soft 
WHERE ID = '2' 
    AND Y= '4' 
ORDER BY Z DESC 
LIMIT 1 
+0

나를 도와 줘서 고마워. –

관련 문제