You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关联calendar与team表查询的高效SQL语句优化咨询

优化关联团队信息的SQL查询

你当前的SQL通过多次子查询获取团队信息,虽然能正常运行,但效率较低——每次子查询都要单独访问team表。更高效的写法是通过两次LEFT JOIN关联team表,一次性获取所有需要的关联数据,避免重复查询:

SELECT 
    c.*,
    t1.Name AS TeamName1,
    t1.Image AS TeamImage1,
    t2.Name AS TeamName2,
    t2.Image AS TeamImage2
FROM calendar c
LEFT JOIN team t1 ON t1.Id = c.team_id1
LEFT JOIN team t2 ON t2.Id = c.team_id2
ORDER BY c.Date DESC;

说明:

  • 用别名c指代calendar表,t1、t2分别指代关联的两个团队,让SQL更简洁易读
  • LEFT JOIN确保即使team_id1或team_id2没有对应团队数据时,calendar的记录依然会被返回(如果不需要这种场景,可以换成INNER JOIN)
  • 避免了多次子查询带来的重复IO操作,查询效率会显著提升

另外注意你原SQL里的FROM calendrier应该是笔误,已修正为calendar。

内容的提问来源于stack exchange,提问作者itdev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 01:31:08