我有一个问题,渲染不同的值从mysql。我只是使用laravel-7 ^,我想呈现列名称,而不是列id。
我有三张table:日期、代理、用户。
在日表中,有这样的日期:
| 识别号|代理ID|
| - ------|- ------|
| 1个|1个|
在代理表中,有这样的日期:
| 识别号|用户标识|
| - ------|- ------|
| 1个|五个|
在用户表中,有这样的日期:
| 识别号|姓名|
| - ------|- ------|
| 五个|马可|
现在,我得到的信息,因为我使用联接方法:
$days = DB::table('days')
->join('users', 'days.user_id', '=', 'users.id')
->join('users', 'days.agent_id', '=', 'users.id')
->select('days.id', 'users.name')
->get();
第一个问题是我不能使用两次"users"表的连接。第二个问题是我不能得到代理的名称,因为days. agent_id = www.example.com和agents. user_id = users. id。agents.id and agents.user_id = users.id.
有人能帮我吗?谢谢!
1条答案
按热度按时间polhcujo1#
在构建SQL查询时,需要为表(和列)提供唯一的别名,但您当前的查询与示例表建议的关系不匹配(
days
没有user_id
),我认为应该是: