sql - 从表中选择时如何解决 NULL 值问题?
问题描述
我有4 3 列的学生表:
- 第一个有名字的
- middle具有中间名和 NULL VALUES
- 姓_
- 房子 房子的名字
- 出生每个人的出生日期
我想选择所有记录,其中房子是Gryffindor,包括中间值为 NULL 的记录。
SELECT first || " " || middle || " " || last || "," || " " || "born" || " " || birth AS birth
FROM students
WHERE house LIKE "Gryffindor"
ORDER BY last, first;
解决方案
这里一种快速而肮脏的解决方法是COALESCE
对所有名称组件使用:
SELECT COALESCE(first, '') || ' ' ||
COALESCE(middle || ' ', '') ||
COALESCE(last, '') || ', born ' || birth AS birth
FROM students
WHERE house = 'Gryffindor' -- assuming you want a specific house
ORDER BY last, first;
推荐阅读
- google-maps - 如何绘制一些标记并使其彼此不同(颤动谷歌地图)
- python - 无法更改 Scrapy Spider 的设置
- angular - 为什么使用 MAT_DIALOG_DATA 将数据传递给角度材质对话框
- tensorflow - tensorflow 中是否有类似 Pytorch 中的 load_state_dict() 的函数?
- php - 如何返回变量而不是字符串?
- string - 返回 csv 文件的所有行,除了 Clojure 中的第一行
- r - 如何更改列类型`
`到` 在r中使用`read_xlsx`或`read_excel`的`col_types`? - spring - 更正您的应用程序兼容版本的 javax.servlet.ServletContext 的类路径?
- android - HM-10 作为 BLE 监听器:从它建立一个简短的连接
- python - 使用 pytorch 中的函数计算二元熵损失