sql - 单行查询以对具有重复项的条目进行分组
问题描述
我目前有一个包含两个属性users和hits的表。
users
列有重复项。hits
属性是 Y 或 N。
我想在这个表上执行一个选择查询来获取用户,按用户分组的命中。这样,如果用户有任何hits=Y 的条目,则应将用户的 hit 属性设置为 Y。
例子:
解决方案
Use GROUP BY
statement:
SELECT
User,
CASE MAX(CASE Hits WHEN 'Y' THEN 1 ELSE 0 END)
WHEN 1 THEN 'Y' ELSE 'N'
END AS Hits
FROM USR
GROUP BY User
推荐阅读
- vba - 我担心这个从 FILETIME 数据中提取年份的功能需要更多测试
- docker - Docker 网络和 VLAN 子网之间的路由
- javascript - 未捕获的错误:尚未为上下文加载模块名称“util”:_。使用要求([])
- c++ - 在新操作系统上编译时提供核心转储的旧代码
- xamarin - 光标位置在 xamarin 形式的 syncfusion Richtexteditor ver(18.4.0.30) 中不起作用,用于在文本冗长的情况下首先闪烁光标
- c++ - 如何使用 C++ 在 VS Code 中进行调试。我不断收到错误
- html - 如何链接 svg 图像而不消失?
- ruby-on-rails - NoMethodError:未定义的方法“入队”| 规范 | 活跃工作 | 导轨 4.1
- php - 单击复选框后如何冻结复选框?我尝试了,但它不起作用
- azure - ADF 管道和触发器