日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL中查询时间最大的一条记录

發(fā)布時間:2024/9/5 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL中查询时间最大的一条记录 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在項目中要查詢用戶最近登錄的一條記錄的 ip

直接寫如下 SQL:?

SELECT ip,MAX(act_time) FROM users_login GROUP BY login_id;

但是這樣是取不出用戶登錄記錄中時間最大的那個 ip , 僅僅只是查到了最大時間,和 ip 沒關(guān)系

找了相當(dāng)多的文章,經(jīng)過自己測試,發(fā)現(xiàn)一個比較好的方式處理這個問題,舉例如下:

現(xiàn)在假設(shè)有一張數(shù)據(jù)表 A , 字段和數(shù)據(jù)如下:

姓名(name)身份證(唯一標(biāo)識)(id)購買產(chǎn)品(pro)價格(price)數(shù)量(count)購買時間(time)
張1111111Computer160052018-03-03
張111111Phone12    12  2018-03-05
張222222Pipe12342018-03-04
張222222Computer160052018-03-05
張333333Phone12122018-03-03
張333333Pipe12342018-03-06
張333333Computer1600  52018-03-09
張444444Phone12122018-03-09
張555555Pipe12342018-03-02

?

在這張數(shù)據(jù)表中,我們需要查詢表中每一個用戶在最后一次都購買了什么產(chǎn)品以及相關(guān)信息

SQL語句如下:

SELECT * from (SELECT * FROM A ORDER BY time) a GROUP BY a.id;

解釋:

在這里,我們首先對 A 表進行按照時間的順序排序,這樣我們可以把每個用戶最后一次購買記

錄排在最上面,排序之后再嵌套一層查詢,這一層查詢使用? GROUP BY 語句。在使用GROUP?

BY 語句的時候,他會按照分組將你排過序的數(shù)據(jù)的第一條取出來,這樣就比較符合條件了,這種

方式在添加索引的情況下效率相當(dāng)快

?

轉(zhuǎn)載于:https://www.cnblogs.com/leeyongbard/p/9580233.html

總結(jié)

以上是生活随笔為你收集整理的MySQL中查询时间最大的一条记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。