0
点赞
收藏
分享

微信扫一扫

Mysql多表关联查询

奔跑的酆 2022-02-21 阅读 101

​​​​​三表联合查询语句,注意select时,如果某个字段在不同的表中有重复的话需要指定具体的表,比如应该使用:select replay_task.start_time from xxx,而不是select start_time from xxx,因为start_time在replay_task与general_flow两张表中同时存在。

select replay_case.case_name,replay_case.flow_id,replay_task.case_id,general_flow.flow_name,general_flow.flow_env,general_flow.type,general_flow.ku_ids,replay_task.start_time,replay_task.end_time from replay_case left join replay_task on replay_case.id=replay_task.case_id left join general_flow on general_flow.id=replay_case.flow_id;

如果不指定具体的表名,会报错:"Column 'start_time' in field list is ambiguous"。

另一方面,需要注意:left join(左连接)与right join(右连接)的区别。

select replay_case.case_name,replay_case.flow_id,replay_task.case_id,general_flow.flow_name,general_flow.flow_env,general_flow.flow_env_type,general_flow.type,general_flow.file_url,general_flow.ku_ids,general_flow.start_time,general_flow.end_time from replay_case left join replay_task on replay_case.id=replay_task.case_id right join general_flow on general_flow.id=replay_case.flow_id;

参考:mysql查询语句和多表关联查询以及子查询

举报

相关推荐

0 条评论