假設我有,其中有兩個字段,名和號(我只是提出我的問題的前提下這裏)一張桌子和假設我將返回最大值爲的行數。如果我使用命令如何基於最大值在其列中的一個SQL返回多行
SELECT name, MAX(number) FROM tablename;
但是,如果我有一個最大的數字兩個或兩個以上這樣的行,我是怎麼修改上面的查詢,以獲得所有的行?
編輯:我希望它返回所有可能找到最大值的行,而不只是其中一行,它應該正確地與正確的名稱相關聯。
假設我有,其中有兩個字段,名和號(我只是提出我的問題的前提下這裏)一張桌子和假設我將返回最大值爲的行數。如果我使用命令如何基於最大值在其列中的一個SQL返回多行
SELECT name, MAX(number) FROM tablename;
但是,如果我有一個最大的數字兩個或兩個以上這樣的行,我是怎麼修改上面的查詢,以獲得所有的行?
編輯:我希望它返回所有可能找到最大值的行,而不只是其中一行,它應該正確地與正確的名稱相關聯。
您使用where
條款:
select t.*
from tablename t
where t.number = (select max(number) from tablename);
查詢,順便說一下,只返回的最大數量。它返回可以來自任何行的name
的任意值。
如果你想只有一個值,你應該使用:
select t.*
from tablename
order by number desc
limit 1;
我希望它返回所有可能找到最大值的行,而不只是其中一行,它應該正確地與正確的名稱相關聯。 – SoulRayder 2014-09-21 14:15:18
@SoulRayder。 。 。這是第一個查詢所做的。 – 2014-09-21 15:01:32