在 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
近期评论