mysql - Laravel WHERE 子句与 AND

标签 mysql laravel

如何在 Laravel 中连接 WHERE 和 AND?

我想做这样的事情:

SELECT * FROM sales WHERE created_at >= $startingDate AND created_at < $endDate

我尝试过这样的:

return DB::table('sales')
->where('created_at', '>=', $startingDate)
->where('created_at', '<', $endDate)->get();

但没有达到我想要的结果。

如果我连接这两个 WHERE 子句,它与 WHERE (something) AND (somethingelse) 相同吗?

我的目标是获取这些日期之间的数据,但包括最后一天。

我还尝试了 whereBetween('created_at', [$startingDate, $endDate]) 但它不包括最后一天。

我该怎么做?

最佳答案

My goal here is to get data between those dates, but including the last day.

使用endOfDay():

Sale::whereBetween('created_at', [$startingDate, $endDate->endOfDay()])->get();

我假设这些变量是 Carbon 实例。如果没有,请先执行此操作:

$startingDate = Carbon::parse($startingDate);
$endDate = Carbon::parse($endDate);

关于mysql - Laravel WHERE 子句与 AND,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48869925/

相关文章:

mysql - 在sql中可以只显示a小于b的行吗?

MySQL INTERSECT 替换 INNER JOIN - 请解释

php - 无论文件大小如何,Laravel 文件大小验证都会返回错误

php - mysql 中 WHERE 的问题

php - 有没有一种快速的方法将 mysql 对象结果分配给自定义类?

mysql - 在 ALTER TABLE 中使用多个操作遍历表

php - 使用php将变量插入mysql

php - Behat 3 和 Laravel,测试环境不被尊重

php - Laravel LeftJoin where

php - 我如何在注册期间为用户分配角色? (委托(delegate))(Laravel 5.1)