sql - SQL:WITH子句如何引用column_name
问题描述
我将创建一些伪代码来解释我的问题:
WITH MAX_BES AS
(SELECT MAX(ID) AS MAX_ID FROM TABLE1);
SELECT .....
FROM
TABLE2, TABLE3
WHERE
TABLE2.ID IN (MAX_BES.MAX_ID);
上面的代码不起作用。我应该如何在 IN 子句中引用我的 WITH 子句中的列?
非常感谢您的快速反馈。
解决方案
使用子选择并做出一个声明,而不是两个。
WITH max_bes AS (
SELECT max(id) AS max_id
FROM table1
) --<< no ; here!
SELECT .....
FROM table2
JOIN table3 ON ... ??
WHERE table2.id IN (SELECT max_id FROM max_bes);
推荐阅读
- reactjs - 如何在没有 Node.js 服务器的情况下部署 Next.js 应用程序?
- javascript - 如何使用 JavaScript 使图像在点击时播放声音?
- android - Android Paging 3 库:如何使用新参数更改列表?
- java - Discord Java Bot 没有响应
- android - 如何用 Flow 替换 LiveData
- php - 致命错误:未捕获的类型错误:filter_var():参数 #3 ($options) 必须是数组类型
- c - 将 C 数组中的一个字符转换为大写会给出 C4244 警告
- unity3d - 检查子弹来自玩家的有效方法 [Unity Multiplayer Mirror]
- python - 在条件下用最常见的数字替换缺失值
- javascript - HTML 视频播放器 - 如果选项卡失去焦点,则无法跳过视频并重新启动