sql - 查询错误 (1241):操作数应包含 1 列
问题描述
如何修复此错误?
此查询返回错误:查询中的错误 (1241):操作数应包含 1 列
SELECT uti_id, uti_nome FROM utilizador WHERE uti_escola=1 AND uti_id IN
(SELECT DISTINCT ens_utiid_escola, SQRT(POW(69.1 * (uti_latitude - ?), 2) + POW(69.1 * (? - uti_longitude) * COS(uti_latitude / 57.3), 2)) * 1.609344 AS distance
FROM utilizador LEFT OUTER JOIN ensino ON uti_id=ens_utiid WHERE uti_estado=1
AND uti_tipo=1 HAVING distance < ?) ORDER BY uti_nome
解决方案
错误来自查询的这一部分:
uti_id IN (SELECT DISTINCT ens_utiid_escola, SQRT(POW(69.1 * (uti_latitude - ?), 2) + POW(69.1 * (? - uti_longitude) * COS(uti_latitude / 57.3), 2)) * 1.609344 AS distance
首先,您不需要select distinct
在in
子查询中。其次,错误是因为您有两行。所以如果你想使用这个逻辑:
uti_id IN (SELECT ens_utiid_escola
FROM . . .
)
然后你需要distance
在你使用它的地方重复表达式。
推荐阅读
- flutter - 在 Flutter 中的 Scroll 上隐藏底部导航栏
- php - sudo apt-get install php5-xsl 给出 403 Forbidden 错误
- php - Yii2:filterModel的GridView“必须是整数”错误
- sql - 执行 SP 时从表中获取值
- java - 用 jna 加载 lib .so
- javascript - 在 Angular 5 应用程序中获取请求抛出 404 错误
- r - 对数据框进行排序并创建新列,按 id 显示连续输赢
- html - Microsoft Edge 浏览器不显示表格边框
- c# - 如何从 cshtml 表单获取数据并使用 Razor Pages c# 将其写入 txt 文件
- c# - 为什么我在 MVC 应用程序的部分视图中出现字典错误?