我有2个表,我想要显示在我的网站列表中的所有用户,并显示他的上次登录详细信息从表tbl_login_details,但获得该用户的上次登录详细信息
1-显示表中的所有用户- tbl_user
2-显示所有用户的最后一次登录,因此tbl_login_details的数据必须是有序的,然后取LIMT
---------tbl_user-------
id user_id user_name
1 5 mohammed
2 7 ahmed
-------------tbl_login_details----------
id user_id last_activity
1 7 2016-5-2
2 7 2017-4-2
3 7 20-17-8-4我的工作是
$this->db->select('m.*,u.*');
$this->db->from('tbl_user m');
//$this->db->where("m.user_id", $id);
$this->db->join('tbl_login_details u ', 'u.user_id = m.user_id');
$where = 'm.user_id = u.user_id OR u.user_id = m.user_id OR m.user_id=" " ORDER last_activity';
$where = $this->db->order_by("last_activity", "desc");
$this->db->where($where);
// $this->db->limit('1');
$this->db->group_by('m.user_id');// add group_by
$query = $this->db->get();
return $query->result();发布于 2018-09-20 17:30:17
使用最大聚合来查找最后一个活动:
select userid, max(last_activity)
from tbl_user a inner join tbl_login_details b on a.userid=b.userid发布于 2018-09-20 17:44:21
您是否正在尝试获取每个用户的最新详细登录信息,如果是,您可以使用ORDER DESC和LIMIT 1
首先为display tbl_user创建查询
SELECT * FROM tbl_user ORDER BY id ASC然后,您可以为获取上次用户登录信息创建查询
SELECT * FROM tbl_login_details WHERE user_id = 7 ORDER BY id DESC LIMIT 1您可以使用模式弹出窗口来显示详细信息登录。
或者你正在尝试这样的展示?
id user_id user_name last_activity
1 5 mohammed 20-17-8-4
2 7 ahmed 20-17-8-4发布于 2018-09-20 18:03:43
您可能正在搜索以下内容
SELECT user_id, user_name, (SELECT last_activity FROM tbl_login_details WHERE tbl_login_details.user_id = tbl_user.user_id ORDER BY last_activity DESC LIMIT 1) as last_activity FROM tbl_user 更新的代码。搜索如何在活动记录中写入此子查询。或者只使用自定义查询,如$query = $this->db-> query ("YOUR QUERY");
https://stackoverflow.com/questions/52421762
复制相似问题