Sql Laravel子查询

Sql Laravel子查询,sql,laravel,Sql,Laravel,我想在查询中使用子查询作为选择。但是这个代码不起作用 $listed_waiting_approach = DB::table('be_medical_insurance_for_foreigners') ->join('be_product','be_product.id','=','be_medical_insurance_for_foreigners.product_id') ->join('be_status','be_status.id','=','be_m

我想在查询中使用子查询作为选择。但是这个代码不起作用

$listed_waiting_approach = DB::table('be_medical_insurance_for_foreigners')
    ->join('be_product','be_product.id','=','be_medical_insurance_for_foreigners.product_id')
    ->join('be_status','be_status.id','=','be_medical_insurance_for_foreigners.payment_status_id')
    ->where('be_medical_insurance_for_foreigners.is_approved','=',false)
    ->where('be_medical_insurance_for_foreigners.is_active','=',true)
    ->where('be_medical_insurance_for_foreigners.payment_status_id','=',$payment_status_id1)
    ->where('be_medical_insurance_for_foreigners.order_status_id','=',$order_status_id1)
    ->select('be_medical_insurance_for_foreigners.*','be_product.name as productname','be_medical_insurance_for_foreigners.is_approved as approve','be_status.code as statuscode','**(SELECT code FROM be_status WHERE id=$payment_status_id1 ) as paymentname**')
    ->get();

您可以将DB::raw组合与DB::select组合使用。那有点像

DB::select( DB::raw( " ... ") )
您还可以使用:

DB::表“外国人医疗保险” ->选择RawBe\u medical\u insurance\u for_Foreigns.*,be\u product.name作为产品名称,be\u medical\u insurance\u for_Foreigns.is\u approved作为approve,be\u status.code作为statuscode,从be\u status中选择代码,其中id={$payment\u status\u id1}作为paymentname ->得到;