在 Laravel 9 中,查询单行单列的值
1、当表中存在多行数据时,实现如下。报错:Call to a member function value() on null。如图1
$return = Order::query()
->select('id')
->where('transaction_no', '=', '1')
->first()
->value('id');
var_dump($return);
exit;
2、调整实现如下,当记录不存在时,查询结果为 NULL。当记录存在时,查询结果为 int(6),为第一条记录的 单列 值。符合预期。
$return = Order::query()
->select('id')
->where('transaction_no', '=', '1')
->limit(1)
->value('id');
var_dump($return);
exit;
3、查看执行的 SQL,符合预期。如图2
select `id` from `orders` where `transaction_no` = '1' limit 1


近期评论