[英]fetch data from multiple tabels
我有一些表,其中一个是我要通过搜索用户名从此表中获取ID的用户表,第二个是我要通过搜索奖品从此处获取user_id的prize_info表,毕竟我只想获取pril_info.user_id和user.id.laravel4中此搜索部分的最佳方法是什么? 这是我的密码
$search = '%'.Input::get('keywords').'%';
$pages = DB::table('user')
->select('user.id','user.username')
->where('username', 'LIKE', $search)->get();
$blogitems = DB::table('prize_info')
->select('prize_info.id', 'prize_info.prize_name', 'prize_info.user_id')
->where('prize_name', 'LIKE', $search)->get();
您对上述代码有何想法???? 我通过这一行检查结果,但它不起作用!
$results = $pages->union($blogitems)->take(30)->get();
请帮助我!最好的问候
我建议您使用Laravel的雄辩的ORM关系来做到这一点。 您可以使用可用的关系轻松获取相关记录;
您可以使用此:
$search = '%'.Input::get('keywords').'%'
$results = DB::table('user')
->select('user.id','user.username','prize_info.id', 'prize_info.prize_name', 'prize_info.user_id')
->leftJoin('prize_info','user.id','prize_info.user_id')
->take(30)
->get();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.