laravel - laravel eloquent union 不同的专栏
问题描述
我想加入这个表,但列不同。
$user_plays_aas = DB::table('user_plays')
->leftJoin('user_plays_aas', 'user_plays.id', '=', 'user_plays_aas.user_play_id')
->leftJoin('aas_games', function($join) {
$join->on('user_plays_aas.game_id', '=', 'aas_games.game_id')
->on('user_plays_aas.prd_id', '=', 'aas_games.prd_id');
})
->where('user_plays_aas.txn_id', $gameid);
$user_plays_pp = DB::table('user_plays')
->leftJoin('user_plays_pp', 'user_plays.id', '=', 'user_plays_pp.user_play_id')
->leftJoin('pp_games', 'user_plays_pp.gameID', '=', 'pp_games.gameID')
->where('user_plays_pp.roundid', $gameid);
$Union= $user_plays_aas
->unionAll($user_plays_pp );
我如何制作相同的列 $user_plays_aas 和 $user_plays_pp ?导致 Diff1 或 Diff2 读取为列而不是数据,因此出错。
$user_plays_aas->select('Same1','Same2', 'Diff1 as PP1', 'AAS1');
$user_plays_pp ->select('Same1','Same2', 'PP1', 'Diff2 as AAS1');
谢谢
解决方案
推荐阅读
- c# - C# How to turn an Action of T into awaitable Function of Task of T
- webpack-4 - 为什么我需要 css-loader?
- iis - 从 IIS 运行时服务未向 Consul 注册
- c# - C#将十六进制字符串作为十六进制发送
- reactjs - 使用 React 选择 contenteditable HTML 元素的文本
- c# - 使用 SQLite Xamarin 表单替换或更新表中的特定值
- javascript - 删除实时数据库上的数据 - Firebase
- php - Laravel Force HTTPS 重定向你太多次
- python - 自然对熊猫中的数据框列进行排序
- database - 在不同的节点上部署微服务及其数据库