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

如何修正SQL代码以计算指定SSN员工与其他员工的住宅平均距离

修正SQL代码并计算员工住宅平均距离

首先你的原始SQL存在几个明显的语法和逻辑问题:

  • 误用了中文单引号(’731’),SQL仅支持英文单引号'
  • 子查询的嵌套结构混乱,出现重复的FROM关键字,别名定义也不符合SQL语法规范
  • 逻辑上偏离了需求:你需要筛选SSN为'123456789'的员工,但代码里错误地用了hno='731'作为条件

修正后的SQL代码

针对「计算SSN为'123456789'的员工住宅与其他所有员工住宅的平均距离」这个需求,正确的SQL写法如下:

SELECT AVG(ABS(e.hno - target_emp.hno)) AS average_distance
FROM employee e
-- 单独获取目标员工的住宅数值
CROSS JOIN (
    SELECT hno 
    FROM employee 
    WHERE SSN = '123456789'
) AS target_emp
-- 排除目标员工自身(避免计算与自己的距离)
WHERE e.SSN != '123456789';

最终结果

假设数据表中的数据准确,运行修正后的代码后,得到的正确结果为 选项c:1133.38(这类距离计算通常保留两位小数,与该选项精度匹配)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 08:56:36