在SQL中,如何查詢某一字段中最大值的資料?

時間 2021-05-13 00:15:12

1樓:南瓜

這不是超簡單嗎,首先有索引的情況下不要使用max函式效率太低

最高效寫法是 select * from table where date = (select date from table order by date limit 1 desc)

2樓:

select top 1 with ties * from table order by date desc

取出第乙個分組的所有資料集。

如果date加了索引,效能在所有方案裡最好,執行計畫只需要一張表 Sort。

3樓:「已登出」

select a.* from table a,(select max(date) as _date from table) b where a.date=b._date

4樓:如沐春風

1.我覺得最好還是從源頭解決問題比較好,從excel把資料匯入到資料庫中,日期格式是可以保留的啊,像mysql和sqlserver我都匯入過。

2、另外因為你的日期是數字,沒有辦法判斷一天的日期的,是否考慮加一列時間戳,mysql中好像有乙個型別是timestamp型別吧(電腦沒在身邊不知道寫的對不對)這個型別可以根據資料,自動記錄資料插入時間修改時間(具體用法可以上網仔細查查)。

5樓:馬拉的萬花筒

這個很簡單的,帶個子查詢語句。

select * from 表名 where date=(select max(date) from 表名)

6樓:

題主的意思應該是最大一天對應的所有資料。

用rank() over( order by date desc) as num

作為子查詢,再在外面的where num = 1

7樓:wujun

先取最大值,然後在另乙個select裡面where等於他。不過我個人還是建議你嘗試把Excel和SQL的資料對齊一下,應該是可以直接匯入時間的

8樓:周田

最簡單的子查詢:select * from table where date = (select max(date) from table)

或者用輪子哥講的join自己:

select * from table t1 left join (select max(date) as date from table) t2 on t1.date=t2.date where t2.

date is not null

9樓:劉興鵬

我覺得你還是先寫個程式把日期欄位的內容改為yyyy/MM/dd HH:mm:ss的形式之後再說。資料庫可以為字串排序,然後你就可以寫類似的查詢語句

select * from table where time>'2017/03/02 00:00:00' and time<'2017/03/03 00:

00:00' order by time

select top 1 * from table order by time desc

10樓:

select * from table1 order by date desc limit0,1

按照日期降序排序取第一條紀錄就好了

在寫作中如何避免大量使用 像 這一字眼?

神奇作文課 作為一種消遣的方式,兩段都寫得挺好,像 也並不扎眼。兩段對比的話,第二段好,有敘事有思考,能給人留下印象。第一段你就沒想好自己要寫什麼,沒有可以傳播的東西,你可以在寫之前繼續深入思考,比如為何自己會對這樣的調調如此神往,一直思考到有話要說,再動筆寫,就好了。 妖亦可 文章不厭百回改,一段...

最近看到一段js,在字串中,插入變數拼接字串,可以用 這種方式嗎?為什麼?什麼原理?

前端小胖 這個是 ES6 新增的字串模板。使用起來非常方便。在字串模板裡面變數寫在 裡面,其他的正常寫就實現了拼接字串。varage 20 var str Ruoduan 模版字串,es6的乙個特性,解決了來回的雙引號單引號加號巢狀的痛點,並且在會保留鍵盤格式的例如你在拼接的時候敲了個回車,它會原封...

在一段戀愛中,女生應該如何對男生好?

四個酒窩 我和前男友的時候,我媽就說過,這段關係是我用金錢維繫的。整的我想當崩潰呀!其實我各方面條件都比他好,就是付出型性格,結果他還是讓我給寵壞了,寵的我不喜歡他了。付出型性格,容易愛的卑微,你要想的不是怎麼對他好,而是找乙個不那麼容易被你寵壞的人,找個也對你好的人。有些人就是賤,不一定珍惜你的好...