2014-10-09 54 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 

我想選擇X其中(ID = 2和Y = 4和Z最大值)。 我有這樣的代碼,但不知道在哪裏添加MAX函數。

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

請幫我使用MySQL。

+2

'SELECT MAX(X)X FROM ...'是你在找什麼? – 2014-10-09 07:29:01

+0

謝謝我尋找最大(Z)在哪裏實際上 – 2014-10-09 08:02:58

回答

2

有已經是正確的變種,如果你需要只有一條X具有最大的Z-

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

和變異與子查詢有沒有可能不是隻有一條X最大Z.

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

非常感謝你的描述。 – 2014-10-09 18:22:50

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

感謝您的幫助。 – 2014-10-09 18:23:30