php - 从集合中的相同日期记录中仅获取一条记录 - Laravel

标签 php mysql laravel-5

有没有一种方法可以让我从 date 记录中检索一条记录,其中的相同值收藏?

我的记录是这样的,

id | date       | event_name   | type
----------------------------------------
1  | 2016-01-23 | event 1      | event 1
2  | 2016-01-23 | event 1      | event 2
3  | 2016-03-15 | event 2      | event 1
4  | 2016-03-15 | event 2      | event 2

正如您所看到的,有一些具有相同日期的记录,我想仅获取一个相同日期的记录。所以我希望得到,

2016-01-23, event 1
2016-03-15, event 2

我试过了,

$events = events::select( events.*',
            DB::raw('(select date from events where date = events.date) as events'))
            ->get();

但不幸的是它不起作用。它给了我一个来自

数组
dd(var_dump($events->toArray()));

有什么想法吗,请帮忙?

最佳答案

实际查询:

SELECT * FROM events GROUP BY date

对于 Laravel:

$events = DB::table('events')->groupBy('date')->get(); 

关于php - 从集合中的相同日期记录中仅获取一条记录 - Laravel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38736371/

相关文章:

Laravel 5.5 - 将图像存储到 S3

php - 如何在 Laravel 5 中执行查询? DB::getQueryLog() 返回空数组

php - 运行 Composer 时禁用 xdebug

php - DQL 与 JOIN Doctrine2 和 Symfony2

java - 使用 JSTL 迭代列表内的集合

sql - MySQL - 如何简化这个查询?

在 INSERT 或 UPDATE 上触发的 MySQL 触发器?

laravel - Laravel 中的注册错误

php - Uncaught Error : Class 'PHPMailer\PHPMailer\Exception' not found in C

php - 在 PHP 中检测轮数?