在mysql上显示数据3表

时间:2018-03-30 06:27:26

标签: mysql database

我想请所有朋友帮我解决问题。

我有几个想要连接的表。

  1. 客户表
  2.    id     | name_cust                         | idmd_pic
    -----------------------------+--------------------------
       10     | CF Sukajadi Bandung               | 7
       11     | SPM Toserba Griya Dinasti         | 7
       12     | SPM Toserba Yogya GATSU           | 7
       13     | SPM Toserba Yogya Lucky Square    | 17
       14     | PT Transretail Indonesia/ Sukajadi| 7
    
    1. details_the visit table
    2.    id     | idcust | name_cust                          | visit_date | idmd_visit
      -----------------------------+---------------------------------------------------
         20     | 12     | SPM Toserba Yogya GATSU            | 2018-03-23 | 7
         21     | 13     | SPM Toserba Yogya Lucky Square     | 2018-03-23 | 17
         22     | 11     | SPM Toserba Griya Dinasti          | 2018-03-23 | 7
         23     | 14     | PT Transretail Indonesia/ Sukajadi | 2018-03-24 | 7
         24     | 11     | SPM Toserba Griya Dinasti          | 2018-03-24 | 7
         25     | 10     | CF Sukajadi Bandung                | 2018-03-24 | 7
         26     | 13     | SPM Toserba Yogya Lucky Square     | 2018-03-24 | 7
         27     | 12     | SPM Toserba Yogya GATSU            | 2018-03-24 | 7
         28     | 11     | SPM Toserba Griya Dinasti          | 2018-03-29 | 17
      
      1. datamd table
      2.    id     | name_md                           | visit_rotation
        -----------------------------+--------------------------
           7      | Nunu Nugraha                      | 9
           17     | Erwin                             | 10
        

        我想生成这样的数据

           id     | name_cust                         | idmd_pic | visit_date | idmd_visit | visit_rotation |
        -----------------------------+------------------------------------------------------------
           10     | CF Sukajadi Bandung               | 7        | 2018-03-24 | 7      | 9
           11     | SPM Toserba Griya Dinasti         | 7        | 2018-03-24 | 7      | 9
           12     | SPM Toserba Yogya GATSU           | 7        | 2018-03-24 | 7      | 9
           13     | SPM Toserba Yogya Lucky Square    | 17       | 2018-03-23 | 17     | 10
           14     | PT Transretail Indonesia/ Sukajadi| 7        | 2018-03-24 | 7      | 9
        

        这里我很困惑如何使数据可以像那样显示,我无法按照其idmd_pic和最新访问日期显示数据,希望这里的朋友可以帮忙,谢谢。

1 个答案:

答案 0 :(得分:1)

SELECT c.id,
       c.name_cust,
       c.idmd_pic,
       max(dt.visit_date) as visit_date,
       dt.idmd_visit,
       dm.visit_rotation 
From customer c
inner join details_the dt
on c.id=dt.idcust 
and c.idmd_pic=dt.idmd_visit
inner join datamd dm
on c.idmd_pic=dm.id
GROUP BY C.id
ORDER BY c.id

现场演示

  

http://sqlfiddle.com/#!9/a44a42/2