MySQL Workbench中INNER JOIN查询结果不符预期的求助
解决MySQL查询字段别名问题
你的查询语句里直接使用了State_a、Confirmed_a这类名称,但你的jun20和jan21表中实际对应的字段应该是State和Confirmed(根据你说的"States列匹配"),所以需要给每个表的字段显式指定别名,才能让查询结果正确区分两个表的对应字段。
修正后的查询语句如下:
SELECT jun20.State AS State_a, jun20.Confirmed AS Confirmed_a, jan21.State AS State_b, jan21.Confirmed AS Confirmed_b, jan21.Confirmed - jun20.Confirmed AS Confirmed_Difference -- 直接计算差值,方便后续使用 FROM vars.jun20 JOIN vars.jan21 ON jun20.Region = jan21.Region;
说明:
- 用
AS关键字给每个表的字段指定别名,明确区分jun20(6月数据)和jan21(1月数据)的字段 - 额外添加了
Confirmed_Difference列,直接计算出Confirmed_b - Confirmed_a的差值,省去后续单独计算的步骤 - JOIN条件保持
Region匹配,确保两个表中同一地区的记录正确关联
内容的提问来源于stack exchange,提问作者Roma_Rayado
相关产品推荐
相关产品推荐

