Laravel查询生成器与别名连接

问题描述 投票:0回答:1

我有两个桌子

未知表

id | parent_id 

客户表

id | parent_id  

我的代码:

$transaction = DB::table($name.'_transactions')
                    ->where('user_id', $id)
                    ->join('clients', 'clients.id' , '=' , 'parent_id')
                    ->get();

将与clients.id一起加入=>unknown.parent_id...因为客户表具有parent_id,所以我必须使用别名

请帮助我这样做!

sql laravel alias laravel-6
1个回答
0
投票

使用别名工作解决方案:

$tablename = Roles::where('id', '=' , 6)->first();
                    $name = str_replace(' ', '_', trim($tablename->name));
                    $tb = $name.'_transactions';
                    $exist_in_db = DB::table($tb)
                                        ->where('user_id', $id)
                                        ->get();
                    if(count($exist_in_db) > 0) {
                        $transaction = DB::table("$tb as newtable")
                                        ->where('user_id', $id)
                                        ->join('users', 'users.id' , '=' , 'newtable.parent_id')
                                        ->get();
© www.soinside.com 2019 - 2024. All rights reserved.