sql - 在单行中选择多个值 - SQL Server
问题描述
我需要像这样合并一个带有 ID 和各种位标志的表
-----------------
a1 | x | | x |
-----------------
a1 | | x | |
-----------------
a1 | | | |
-----------------
b2 | x | | |
-----------------
b2 | | | |
-----------------
c3 | x | x | x |
成这样的形式
-----------------
a1 | x | x | x |
-----------------
b2 | x | | |
-----------------
c3 | x | x | x |
问题是数据是按选项 ID 连接的,每个选项都有一个唯一的 ID,它与 a1、b2 连接。当我尝试使用 DISTINCT 选择它时,我从表号 1 中收到结果。我可以通过 SELECT 中的子查询来实现它,但由于性能原因,它确实是一个弱解决方案。
您知道如何选择所有这些标志并将其组合成单行吗?
解决方案
使用聚合
select col1 ,max(col2),max(col3),max(col4)
form table_name group by col1
推荐阅读
- javascript - 背景之间的svg水平线
- javascript - 如何使用 tcp 套接字将图像从 [python 客户端] 发送到 [node.js 服务器]?
- javascript - 为什么我的 Chessboard 变量在我的 Express 应用程序中未定义?
- firebase - Firestore - 如何建模和查询 2 个集合的关系 - IOT 用例 - v2
- python - 导入我使用 swig 制作的 python 代码 ac 库
- javascript - 与 js bin 相比,Mocha 测试返回不同的答案
- spss-modeler - 在 SPSS Modeler 模型中包括输入变量和结果变量
- html - 定位时按钮不可用
- bash - 用于转换子目录中视频的 Bash 脚本
- python - 如何在python中修改PEM格式证书的签名