douyou7072 2016-08-31 12:18
浏览 80
已采纳

如何使用GROUP BY和ORDER BY关键字从表中获取数据?

I have following tables with columns :

1) users

user_id  username

2) projects

p_id   p_name

3) project_status

psdi    p_id    cdid   cid   sid  short_list   res_sent   status_date

4) company

cid   company_name

5) status

sid    status_name    status_order    is_cv_sent 

6) projects_log

pl_id   cdid    project_name     p_id   user_id   status   date_time    

Now, in this projects_log table there are same p_id value exist.

I want to show all unique p_id with latest date_time. as DESC order where pl.cdid = $cdid

I am using following query but can't get the results. It's not showing me all unique p_id as date_time DESC order :(

$get_log = mysqli_query($link, "SELECT 
    pl.*, 
    u.username, 
    p.p_name, 
    c.company_name, 
    s.status_name, 
    ps.* 
    FROM projects_log AS pl 
    LEFT JOIN users AS u ON u.user_id =  pl.user_id 
    LEFT JOIN projects AS p ON p.p_id = pl.p_id     
    LEFT JOIN project_status AS ps ON ps.p_id = pl.p_id 
    LEFT JOIN company AS c ON c.cid = ps.cid 
    LEFT JOIN status AS s ON s.sid = ps.sid 
    WHERE pl.cdid = '$cdid' GROUP BY pl.p_id
    ORDER BY pl.pl_id DESC ");
  • 写回答

1条回答 默认 最新

  • doufei5315 2016-08-31 12:42
    关注

    Using below query you will able to achieve group by p_id and will able to get values of max date_time row.

    $get_log = mysqli_query($link, "SELECT 
        pl.*, 
        u.username, 
        p.p_name, 
        c.company_name, 
        s.status_name, 
        ps.* 
        FROM (
            select MAX(date_time) as MaxDateTime,p_id from projects_log group by p_id
        ) as mpl join projects_log AS pl on mpl.MaxDateTime = pl.date_time and mpl.p_id = pl.p_id
        LEFT JOIN users AS u ON u.user_id =  pl.user_id 
        LEFT JOIN projects AS p ON p.p_id = pl.p_id     
        LEFT JOIN project_status AS ps ON ps.p_id = pl.p_id 
        LEFT JOIN company AS c ON c.cid = ps.cid 
        LEFT JOIN status AS s ON s.sid = ps.sid 
        WHERE pl.cdid = '$cdid'
        ORDER BY pl.pl_id DESC ");
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!