这是我经常问的一道题。
在我们系统中,每次用户登录事件都会记录到login_log表,主要有三列:
-
user_id
-
login_time
-
login_ip
我们系统目前有36,000个用户,平均每个用户登录了100次左右,因此该表有3,600,000行左右的数据了。
现在我们需要把这张表转换成一张名为last_login的表,它只记录每个用户最近一次登录事件,同样有三列:
-
user_id
-
last_login_time
-
last_login_ip
因此这个表不会超过36,000行。
可以用SQL实现,也可以用程序实现。
试试看吧 :-)