表连接中的区别不正常

时间:2014-02-24 10:49:43

标签: sql

您好我正在使用表连接中的distinct但它没有正常工作。只有第一项正常工作。在重复项目获取意味着 user.user_id 列只有第一个user_id得到不同(我是具有组相同的user_id)。在第一个ID之后我正在重复id.my查询如下所示。请帮助我这方面。

@"distinct timesheet.user_id, timesheet.created_date,"
            + "  [user].first_name,[user].last_name")

            .From(@"timesheet "
                  + "INNER JOIN [user] ON  [user].user_id = timesheet.user_id "
                  + "INNER JOIN timesheet_status ON timesheet.timesheet_status_id = timesheet_status.timesheet_status_id"

1 个答案:

答案 0 :(得分:0)

听起来你需要一个GROUP BY条款:

SELECT     timesheet.user_id
          ,MIN(timesheet.created_date) As first_created_date
          ,MIN([user].first_name) AS first_name
          ,MIN([user].last_name) AS last_name
FROM      timesheet
          INNER JOIN [user] ON  [user].user_id = timesheet.user_id 
          INNER JOIN timesheet_status 
              ON timesheet.timesheet_status_id = timesheet_status.timesheet_status_id
GROUP BY  timesheet.user_id

上面的代码将获取每个user_id的最早(MIN)时间表及其名称。对于最新的时间表,您可以将关键字MIN更改为MAX

相关问题