使用 hsqldb 的情况?如何?
Posted
技术标签:
【中文标题】使用 hsqldb 的情况?如何?【英文标题】:case when with hsqldb ? how? 【发布时间】:2020-06-10 17:48:14 【问题描述】:我正在使用带有 HSQLDB 的 libreoffice 基础(新版本),并且想要在某列或单元格数据不为空时查询某个列的位置,我希望生成的单元格输出为“X”,否则它应该保留空的。如何使用 HSQLDB 语法做到这一点?
我用谷歌搜索,但实际上在这方面找不到任何东西。
【问题讨论】:
COALESCE(col, 'X')
?
谁投了反对票,请添加解释,说明问题有什么问题以及如何改进。关于COALESCE
,它看起来与所要求的相反 - 当数据为空时显示“X”。
【参考方案1】:
在 HSQLDB 1.8 中测试。
SELECT B.NAME
FROM "Table1" A
LEFT OUTER JOIN
(SELECT ID, 'X' AS NAME FROM "Table1") B
ON A.ID = B.ID AND A.NAME <> ''
表1:
ID NAME
~~ ~~~~
1 George
2 Sally
3
结果:
X
X
(empty)
编辑:
HSQLDB 确实有CASE WHEN
。文档:http://www.hsqldb.org/doc/1.8/guide/ch09.html#N1251E.
SELECT CASE WHEN NAME<>'' THEN 'X' ELSE '' END FROM "Table1"
SELECT CASEWHEN(NAME<>'', 'X','') FROM "Table1"
【讨论】:
以上是关于使用 hsqldb 的情况?如何?的主要内容,如果未能解决你的问题,请参考以下文章