我希望查询返回所有行和所有列,但有一点需要注意:如果在给定行中,colN为null,则返回字符串'FOO'。
为什么我不使用SELECT col1, col2, ..., COALESCE(colN, 'FOO')
?
我正在实现一个抽象接口,因此我需要使用SELECT
的{{1}}个查询(因为我无法对哪些列进行假设)。我只能假设存在1列:colN。
这会给我带来什么?
我需要这个,因为这个查询与UNION结合使用,这使我可以跟踪数据的来源。
关于如何做到这一点的任何想法?
答案 0 :(得分:2)
你可以做的一件事是
SELECT *, COALESCE(colN, 'FOO') as CoalescedColN
如果可以相应调整UNION
中的其他选择
答案 1 :(得分:0)
我不知道SQL Lite是否可以使用这种技术,但这是我在大多数其他dbs中会做的事情:
选择*来自 (从表中选择col1,col2,...,COALESCE(colN,'FOO')a