0
我在我的postgresql数据库中有两个表。 两个表都有相同的列。Postgresql表相交
我该如何偏好tableA中不为null的值?
TableA
id | name
1 | val_a_1
2 | val_a_2
3 | (null)
TableB
id | name
1 | (null)
2 | val_b_2
3 | val_b_3
结果,我想:
id | name
1 | val_a_1
2 | val_a_2
3 | val_b_3
现在我知道了这个样子,但它更复杂,因为有很多列。
SELECT *
CASE
WHEN TableA.name is NULL or TableA.name = ''
THEN (SELECT TableB.name FROM TableB where TableB.id = 1)
ELSE TableA.name
END
AS name,
CASE
.
. another columns
.
END
感谢
好了,我们已经获得了一些并发症这里。我们想要选择的数据彼此独立,并且在您的案例中没有任何共同点/像ID。而且,我们有大约25列,所以“合并(a.name,b.name)AS名称”对于每一列都是有压力的:)如果你明白了 - 我在tableA中有一个唯一的行, tableB中的一个唯一行,以及我想要“合并”的这两个选定行。喜欢,合并,但在两个选定的行之间。当时我们已经有了案例,但它也非常有压力,如果你知道我的意思:) – anti 2013-02-08 15:21:00