从null中选择?

时间:2010-01-31 15:48:02

标签: sqlite

我正在写一个触发器,我需要2个表。已经存在的新/旧和父的p。但是p可能为null,所以如果我做了

select new.a, new.b, ifnull(p.name, new.c) from p 

我会得到0结果。如果p为null。那么我该如何解决这个问题呢?我可以从null或其他东西中选择并离开连接p并使用ifnull吗?我不知道该怎么做。

2 个答案:

答案 0 :(得分:1)

我对sqlite不太熟悉,但也许你可以试试这样的东西。

SELECT
    new.a, new.b, new.c AS newcol
FROM
    p
WHERE
    p.name = NULL
UNION
SELECT
    new.a, new.b, p.name AS newcol
FROM
    p
WHERE
    p.name <> NULL

答案 1 :(得分:0)

我最终使用了一个虚拟表。

select ... from blah as dummy on dummy.id = new.id //rest of my sql