簡體   English   中英

如果找到MIN值(SQL)時列的值相同,如何獲取FIRST行

[英]How to fetch FIRST row when there are same value for column in case of finding MIN value (SQL)

在我的桌子上,

一列有以下值:

Row Column
 1   90
 2   95
 3   99
 4   90
 5   92
 6   90

現在我想獲取上面列的min value ,但是如果有多個行具有same minimum value則獲取top row 我怎樣才能做到這一點 ?

如上例所示:我想最小值(90)但是第一行。

任何幫助將不勝感激。

MIN也是首先在ORDER中排序的。 因此,只需指定您想要的訂單並采取第一個:

WHERE Column is NOT NULL
ORDER BY Column, Row LIMIT 1

使用此查詢select Row, min(column) from your_table order by Row desc limit 1

如果要以插入的行的相同順序獲取記錄,可以使用:

select Row, min(Column) from my_table group by Column;  

如果您還想獲取已排序的行:

select Row, min(Column) from my_table group by Column order by column, row;  

如果您只查看結果的第一行,只需附加limit 1的查詢;

SELECT TOP 1 * FROM m_test WHERE行IN(SELECT行FROM m_test b WHERE b.column_cnt IN(SELECT min(a.column_cnt)FROM m_test a))ORDER BY行ASC

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM