在查询中使用子查询

时间:2015-05-20 09:28:51

标签: mysql

我有一个mysql数据库,它有许多表:

  • matters

    1. matterid
    2. mattername
    3. state
  • matterjuncstaff

    1. junked
    2. matterid
    3. staffid
  • staff

    1. staffid
    2. staffname
    3. lead(潜在客户可以是Y或N)
  • matterjunactions

    1. matterid
    2. actiondate

规则

  • 一个问题会有一些与之相关的人员但只有一个领导。
  • 一件事可以有任何与之相关的行动。

我想提取一个表格,其中显示state'Open'的所有事项,并列出matteridmatternamestaffname谁是lead上的matter(即lead='Y'}和actiondate的最后matter

我尝试了各种方法,并且相信可以使用子查询来完成,但我无法确定将这些内容放入查询的格式。

1 个答案:

答案 0 :(得分:1)

看起来像这样:

Select m.matterid, m.mattername, s.staffname, max(actiondate)
From matters m
Inner join matterjuncstaff mjs using (matterid)
Inner join staff s using (staffid)
Inner join matterjunactions mj
 On mj.Matterid = m.matterid
Where m.state = 'open'
And s.lead = 'Y'
Group by m.matterid, m.mattername, s.staffname