Tipps, um diesen Satz elegant zu schreiben
P粉025632437
P粉025632437 2023-09-07 18:25:04
0
1
449

Ich habe zwei TischeParametersShare_Details. Ich habe hier meine reine SQL-Abfrage und möchte sie auf rein eloquente Weise schreiben. Bitte helfen Sie.

$shareDetails=DB::select ("SELECT s.id, share_type, para_int_1, para_int_2, price, para_name FROM share_details as s,parameters where para_type='share' and para_id=share_type and startDate=(select max(startdate) from share_details where share_type=s.share_type) group by share_type, s.id, para_int_1, para_int_2, price, para_name");

P粉025632437
P粉025632437

Antworte allen (1)
P粉459440991

尝试像这样:

DB::table('share_details') ->crossJoin('parameters' ->select('share_details.id', 'share_type', 'para_int_1', 'para_int_2', 'price', 'para_name') ->where('para_type','=','share') ->where('para_id','=',DB::raw('share_type')) ->where('startDate','=',function($query) { $query->from('share_details') ->select(DB::raw("'max'(startdate)) ->where('share_type','=',DB::raw('s.share_type')); }) ->groupBy('share_type','share_details.id','para_int_1','para_int_2','price','para_name') ->get();
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!