繁体   English   中英

用户的上次登录详细信息

[英]Last login details of a user

这是我正在使用的查询

ResultSet rsta3=st.executeQuery("Select * FROM login_details WHERE name ='"+name1+"' AND intime = (select max(intime) from login_details where name = '"+name1+"')");

这样我可以获得当前的登录详细信息。如何获取先前的登录详细信息?我应该使用什么查询?

在此处输入图片说明

以下答案中给出的查询仅给出11.44时间

你找到这个

Select * FROM login_details WHERE name ='"+name1+"' order by intime desc LIMIT 1,1

怎么样

Select * FROM login_details WHERE name ='"+name1+"' order by intime desc LIMIT 1,1

这应该检索第二个最旧的记录

另外,由于后来的发现,由于您的数据库将日期数据错误地存储为Varchar,因此您可以使用以下查询,直到修复数据库为止。

Select * FROM login_details WHERE name ='"+name1+"' order by id desc LIMIT 1,1
ResultSet rsta3=st.executeQuery("Select * FROM login_details WHERE name ='"+name1+"' AND intime = (select max(intime) from login_details where name = '"+name1+"' order by intime desc limit 1,1)");

尝试这个

您的查询正确,但是您在插入当前登录会话后正在获取数据。

因此,在验证了用户名和密码后,请使用查询获取最后的登录详细信息,然后使用新的登录时间更新表。

即使使用ORDER BY LIMIT进行抓取也应该有效。

尝试这样的事情:

从login_details中选择*,其中name ='“ + name +”'的顺序为超时时间限制1,1。

唯一的想法是,首先按时间降序对列表进行排序,在您的情况下为:(outtime)将以所需的顺序显示结果。 然后使用限制仅提取第一条记录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM