sql-server - 如何只获得不同的行
问题描述
我有一张如下图所示的表格
id locale roaming rent
301 NULL 18.00 NULL
300 NULL NULL 5.00
299 11.00 NULL NULL
298 NULL NULL 4.00
297 NULL 20.00 NULL
296 NULL NULL 6.00
295 9.00 NULL NULL
294 NULL 20.00 NULL
293 10.00 NULL NULL
我想在一行中的每一列(没有 id 列)中只获取一个值。我该怎么做?但我只想在一个选择查询中执行此操作。
解决方案
一个可能的解决方案:
SELECT (
SELECT TOP 1 [local]
FROM tbl
WHERE [local] IS NOT NULL
ORDER BY [id] DESC
) AS [local]
,(
SELECT TOP 1 [roaming]
FROM tbl
WHERE [roaming] IS NOT NULL
ORDER BY [id] DESC
) AS [roaming]
,(
SELECT TOP 1 [rent]
FROM tbl
WHERE [rent] IS NOT NULL
ORDER BY [id] DESC
) AS [rent]
推荐阅读
- c# - 使用 SSIS 脚本任务下载 Amazon S3 文件
- php - 从 html 文档中的多个标签中刮取相关的文本对
我在数据库字段中有这个 html 源代码。我想分析这段代码,特别是一些表格的字段,并将它们打印在屏幕上。我无法发布所有代码,因为它超过 3000 行代码,这是代码的开头:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transi
- docker - Docker:在宿主环境中执行脚本
- spring-boot - Thymeleaf 时间和日期与时区
- delphi - 如何将制表符写入 InputQuery?
- docker - 如何使用 Helm 模板解析 .env 文件(dotenv)?
- kubernetes - deployment.yaml 中的环境与命名空间
- python - Pandas - 如何从系列中构建和扩展窗口数据框
- css - 使用运行时更改 flexdashboard 中值框的高度:闪亮
- c++ - Simple_Add DPC++ oneAPI 示例运行失败