php - 选择具有最大日期的记录

标签 php mysql

我有一个如下表:

Id  fkEmp_id  Date          Type
1     1       2016-08-20      1
2     2       2016-08-28      1
3     2       2016-08-30      0

我想根据“类型”<> 0 选择记录,“日期”应该是每个员工的最长日期。

我尝试下面的查询:

select *  from table where Type <> 0 and fkEmp_Id = 2 order by max(Date)

但结果如下所示:

 Id  fkEmp_id   Date           Type 
  2    2         2016-08-28     1

如果每个 FkEmp_id 的类型为 1 并且日期为 Max,则只有我想获取记录。怎么做?请帮助我。

最佳答案

这是一个简单的典型聚合(GROUP BY) query .

 SELECT MAX(Date) as MaxDate, fkEmp_id  
   FROM table
  WHERE Type <> 0
  GROUP BY fkEmp_id  

关于php - 选择具有最大日期的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39272574/

相关文章:

javascript - 从 PHP 将数据传递到 JavaScript 的替代方案?

php - Laravel 5.2 无法将跨域 jQuery 方法识别为 AJAX

mysql - 如何检查mysql中的负值并确定之后的输出

sql - 如何编写将 .csv 文件中的数据匹配到 MySQL 中的表的 SQL 查询?

mysql - 如何使 Mysql 变量在查询中起作用

javascript - pdftron webviewer - 如何使用 php 将整个编辑后的 ​​pdf 保存到服务器

php - 如何将 PHP 数组转换为 $keys 和 $values?

php - 使用 magento 重定向到 google 或任何其他网站

mysql - MySQL 表中除了主键之外还需要单独的索引吗?

php - 使用:label for SQL UPDATE statement?有什么问题