php 如何在Laravel中比较一个DB值与另一个DB值

xzabzqsa  于 2023-01-08  发布在  PHP
关注(0)|答案(2)|浏览(151)

我想比较数据库的两个值。是否可以使用“where”方法来完成此操作?例如,“tnx_time”是一个数据库值,“value(duration)”是另一个数据库值。但我现在无法访问“where”函数第三个字段的数据库值。
有人知道怎么修吗?

$trnxs =  Transaction::where('tnx_time', '<',  date("Y-m-d", strtotime( value(duration) )) )
soat7uwm

soat7uwm1#

尝试先存储该值,以便可以正确地比较它。

$duration = value(duration);
$date = date("Y-m-d", strtotime($duration));
$trnxs = Transaction::where('tnx_time', '<', $date);
hsgswve4

hsgswve42#

您可以在“where”子句中使用回调来创建子查询,如下所示(可能需要一些更改)

$trnxs = Transaction::where('tnx_time', '<', function ($query) {
    $query->selectRaw('date("Y-m-d", strtotime(value(duration)))');
})->get();

相关问题