简体   繁体   English

如何从某个用户的数据库表中获取最新条目

[英]How to get the most recent entry from a database table for a certain user

I have a table that displays information on users in a database:我有一个显示数据库中用户信息的表:

$query = "SELECT reviews2_users.id AS IDUSER,
                            signature,
                            user,
                            email,
                            address,
                            COUNT(reviews2_reviews.id) AS COUNTER
            FROM reviews2_users LEFT JOIN reviews2_reviews ON (reviews2_users.id = reviews2_reviews.id_user)
            GROUP BY reviews2_users.id
            ORDER BY COUNTER DESC";

For every user in the table I'd like to show the date of the LATEST entry that they've made into the database.对于表中的每个用户,我想显示他们在数据库中创建的最新条目的日期。

I tried this but it doesn't work (and I'm not very good with databse/mysql):我试过了,但它不起作用(而且我对数据库/mysql不太擅长):

$query = "SELECT reviews2_users.id AS IDUSER,
                            signature,
                            user,
                            email,
                            address,
                            COUNT(reviews2_reviews.id) AS COUNTER
            FROM reviews2_users LEFT JOIN reviews2_reviews ON (reviews2_users.id = reviews2_reviews.id_user)
                            AND LEFT JOIN reviews2_reviews ON max(reviews2_reviews.date)
            GROUP BY reviews2_users.id
            ORDER BY COUNTER DESC";

Could somebody help me out on this?有人可以帮我解决这个问题吗? Thank you谢谢

Please add MAX(date) to first query:请将MAX(date)添加到第一个查询:

$query = "
SELECT reviews2_users.id AS IDUSER
     , signature
     , user
     , email
     , address
     , COUNT(reviews2_reviews.id) AS COUNTER
     , MAX(reviews2_reviews.date) as date
  FROM reviews2_users 
  LEFT 
  JOIN reviews2_reviews 
    ON (reviews2_users.id = reviews2_reviews.id_user)
 GROUP 
    BY reviews2_users.id
 ORDER 
    BY COUNTER DESC
";

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

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