sql - 从 SELECT 语句的字段列表中的子查询返回 COUNT
问题描述
当我运行以下查询时,我想包含一个返回子查询中记录数的 COUNT 的字段。然而,子查询有一个 WHERE 子句,其中该子句中的字段必须与父查询的 SELECT 语句中的字段匹配:
SELECT id, firstName, lastName,
COUNT(
SELECT userId, address FROM UserDetails WHERE userId = <id_from_outer_select_statement>
)
FROM Users
我不清楚如何将外部 SELECT 语句中的 id 字段应用于子查询。
解决方案
为表指定别名Users
并使用它来限定id
子查询中的列:
SELECT u.id, u.firstName, u.lastName,
(SELECT COUNT(*) FROM UserDetails WHERE userId = u.id) counter
FROM Users u
推荐阅读
- java - jar 文件会被视为工件吗?
- pandas - 在 Pandas 数据框中将 float64 数组中的所有单元格展平为 int
- python - 计算时间序列的每日频率
- python - 突出显示 HTML.div 中的选定文本或 Dash 中的 Dcc.Markdown
- javascript - 如何在 Alpine JS 中对最后一个值进行迭代?
- react-native - React Native / Redux:如何处理状态管理
- javascript - 如何根据 React + Typescript 中的类型将道具传递给孩子
- react-native - 如何管理 FCM 推送令牌的更新?
- c++ - 从同一点绘制两条线时,为什么不从同一点绘制?
- keras-layer - L2 正则化的最佳实践?