2014-06-17 44 views
0

最低值和coresponding代碼我有一個用戶表如下查找A單查詢mysql的

id name  age 

1 John  21 

2. Mathan 23 

3. Raj  21 

4. Manoj  50 

5 Krishnan 91 

我想找到最低年齡和其相應的名稱。我怎樣才能做到這一點?

我可以在單個查詢中完成嗎?

注意:多個名字可以有單一的年齡。

+0

什麼是你有望走出從當前數據放? – Sadikhasan

+0

我想找到最低年齡及其相應的名字 – Sam

+0

這裏的最小年齡是21歲,那個年齡段包含John和Raj,意思是你想要兩個名字? – Sadikhasan

回答

1

有你爲什麼要這樣做在單個查詢具體的原因是什麼?

如果你能寫2個查詢,我覺得你可以這樣寫:

User.where age: User.minimum(:age) 
0
select age, group_concat(name) from table group by age order by age asc limit 1 

您將需要稍後在ruby中處理結果,但是這可以在單個查詢中提供所有需要的結果。另外我假設MySQL,所以可能在其他rdbms上有所不同。

0

它提供精確的輸出中,你想一下MySQL,這

SELECT concat("[",name," ",age,"]") AS name 
FROM TABLE 
WHERE age = 
    (SELECT min(age) 
    FROM TABLE); 
+0

您剛纔添加的d是正確的。我需要rails控制檯查詢。但它只給了一個條目。最早的年齡是第一個 – Sam

+0

我給mysql查詢你必須轉換成rails。它是否工作或不在MySQL? – Sadikhasan