我正在写一个触发器,我需要2个表。已经存在的新/旧和父的p。但是p可能为null,所以如果我做了
select new.a, new.b, ifnull(p.name, new.c) from p
我会得到0结果。如果p为null。那么我该如何解决这个问题呢?我可以从null或其他东西中选择并离开连接p并使用ifnull吗?我不知道该怎么做。
答案 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