关于两次左连接同一张procedimentos表的SQL需求咨询
解决重复关联同一张表的SQL写法问题
你当前的SQL语句重复连接了procedimentos表但未指定别名,这会导致字段引用歧义甚至语法错误。要同时获取两个关联表对应的procedimentos数据,只需给每个连接的表分配唯一别名即可:
left join procedimentos proced_adicionais on proced_adicionais.id = faturamento_lancamentos_bpa_adicionais.procedimento_id left join procedimentos proced_principais on proced_principais.id = faturamento_lancamentos_bpa.procedimento_id
关键说明:
- 给每个
procedimentos连接实例起不同别名,比如proced_adicionais对应附加表的关联,proced_principais对应主表的关联(as关键字可省略) - 后续查询中可以通过别名区分两个表的字段,比如
proced_adicionais.nome、proced_principais.descricao,彻底避免字段名冲突 - 保留
left join特性,即使某一侧的procedimento_id无匹配数据,主查询的记录依然会被保留
内容的提问来源于stack exchange,提问作者Joana
相关产品推荐
相关产品推荐

