mysql - SQL (MySQL) - 如何在内部联接中使用嵌套查询中的指定名称
问题描述
SELECT name, age
FROM (SELECT name, age / 2
FROM maintable
INNER JOIN ......
) AS C
INNER JOIN (SELECT (Max(sales), person
FROM C) AS D ON .....
我正在尝试编写与上述类似的查询,但是当我在内部连接部分引用 C 时,它说它不存在。我如何参考它?
解决方案
你不能这样做,你只能在子查询中使用子查询。
SELECT name, age
FROM
(
SELECT name, age / 2
FROM maintable
INNER JOIN ......
) AS C
INNER JOIN
(
SELECT Max(sales), person
FROM
(
SELECT name, age / 2
FROM maintable
INNER JOIN ......
) AS C
) AS D ON ....
如果你的mysql版本支持CTE
WITH C AS (
SELECT name, age / 2
FROM maintable
INNER JOIN ......
)
SELECT name, age
FROM C JOIN
(
SELECT Max(sales), person
FROM C
) AS D ON ....
推荐阅读
- python - Python 使用驱动程序 selenium 将焦点从 Web 浏览器切换回终端
- r - R - 使用累积部分计算(不是累计)填充数据帧的函数或脚本
- node.js - 将套接字服务器与 API 服务器分开是一种好习惯吗?
- godot - 检测 godot 内 3d 对象上的点击/触摸屏输入
- assembly - x86 在执行指令和读/写数据时如何处理字节寻址和字寻址?
- c# - 操作打开新窗口时单击事件超时
- push-notification - 如何使用 twilio 深度链接网络推送通知
- mysql - 从 MySQL 列中提取多个文本 URL
- gremlin - 如何在 Gremlin Server 上以编程方式在运行时创建新的图形实例
- laravel - 保护响应式文件管理器免受直接访问