2015-04-16 49 views
-2

我想檢索最大ID,但我不想在mysql中使用group。如何檢索最大ID而不使用group by?

這是我與組查詢方式:

select max(id), nleadpk 
from `schedule` 
group by nleadpk 

請幫助我。在此先感謝

+1

你的意思是MAX(ID)爲整個表,或者每個nleadpk?但是,請描述爲什麼你不想使用group by!?! – jarlh

+0

是的你對。但我不想用團體的..如果你有答案,然後給我對我來說很重要 –

+1

但你還沒有告訴我們你想要的結果?一行或多行,其中最大等...示例數據,和預期的結果請! – jarlh

回答

2

如果你不想使用group by,仍然想要獲得每個nleadpk的最大ID,你可以使用left join作爲

select t.* 
from schedule t 
left join schedule t1 on t1.nleadpk = t.nleadpk 
and t1.id > t.id 
where t1.id is null ; 
+0

偉大的阿比希感謝你這麼多 –

0

嘗試以下

select id, nleadpk from `schedule` order by id DESC limit 1; 

你也可以做直接查詢像下面..其工作的罰款

select Max(id), nleadpk from `schedule`; 

我提到的這兩個查詢你提到兩個標籤

+1

但你的第一個答案不是SQL,它是SQL Server ... – jarlh

+0

我希望整個表或每個nleadpk的max(id) –

0

試子查詢:

select 
    (select max(id) from schedule) as maxId, 
nleadpk from schedule 

如果只知道MAX(ID)

select max(id) as maxId from schedule