您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

where子句中subselect的SQL使用列

where子句中subselect的SQL使用列

您不能在WHERE子句中使用列别名。

因此,您可以将查询包装在外部选择中,然后在其中应用条件

SELECT * 
  FROM
(
  SELECT a, b, c,
    (SELECT d FROM B LIMIT 0,1) d
  FROM A
) q
 WHERE d >= 10

或者您可以在HAVING子句中引入该条件

SELECT a, b, c,
    (SELECT d FROM B LIMIT 0,1) d
  FROM A
HAVING d >= 10

还有另一种方法CROSS JOINWHERE条款中使用和应用您的条件

SELECT a, b, c, d
  FROM A CROSS JOIN 
(
  SELECT d FROM B LIMIT 0,1
) q
 WHERE d >= 10

这是上述所有查询的 演示。

SQLServer 2022/1/1 18:52:39 有282人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶