[SQL ] Insert or Replace 如何分別給值?

作者: liu2007 (è–¯)   2022-10-22 16:30:14
資料庫名稱:SQLITE
資料庫版本:SQLITE 3
內容/問題描述:
我有一個表如下
CREATE TABLE myTable(
id TEXT NOT NULL UNIQUE,
name TEXT ,
descript TEXT ,
confirmed NOT NULL);
我想要做的事情是每當有一筆新的資料進來的時候
如果資料表裡面沒有id 這筆資料的話就新增(insert)
如果有的話,又假如name 和 descript 的原始內容與此筆薪資料的內容相同,
則 confirmed = 'yes', 反之 confirmed = 'no'
下面是我的語法
INSERT OR replace INTO test (id, name, descript, confirmed)
VALUES ('001', 'aaa', CASE WHEN name = 'aaa' AND descript = 'bbb'
THEN 'YES' ELSE 'no' END
);
本來以為可以像在select上使用case when ,但卻報錯
訊息卻是Result: no such column: name
即使是加上myTable.name仍然報相同的錯誤訊息
請問該怎麼改呢?
感謝閱讀

Links booklink

Contact Us: admin [ a t ] ucptt.com