【问题标题】:How to get record where join does not exist?如何获取不存在连接的记录?
【发布时间】:2019-12-27 08:29:33
【问题描述】:

当另一个表中没有匹配记录时如何从一个表中选择记录。

$bookings->getQuery()
                ->join('consultation', 'consultation.booking_id', '=', 'bookings.id')
                ->whereRaw('bookings.booking_date  >= CURDATE()')
                ->select('bookings.*')
                ->groupBy('bookings.id');

在上述查询中,我仅在没有针对该预订的咨询时才尝试获得预订。如何做到这一点?

【问题讨论】:

    标签: php mysql laravel query-builder laravel-query-builder


    【解决方案1】:

    通过使用 sub_query

    ->whereNotIn('id', function($query){
      $query->select('booking_id')
      ->from('consultation')
      ->distinct();})->get();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-24
      • 1970-01-01
      • 1970-01-01
      • 2020-08-09
      • 1970-01-01
      • 1970-01-01
      • 2013-12-12
      • 1970-01-01
      相关资源
      最近更新 更多