Using the CROSS JOIN subquery
use Illuminate\Support\Facades\DB; $totalQuery = DB::table('orders')->selectRaw('SUM(price) as total'); DB::table('orders') ->select('*') ->crossJoinSub($totalQuery, 'overall') ->selectRaw('(price / overall.total) * 100 AS percent_of_total') ->get();
Tip given by @PascalBaljet
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses on Laravel Daily
[NEW] Practical Laravel Security: Packages, Secrets, Supply-Chain Attacks
7 lessons
43 min read
Laravel 13 Starter Kit Teams and Customizations
10 lessons
33 min
Roles and Permissions in Laravel 13
14 lessons
57 min