[SQL ] Insert or Replace 如何分別給值?
資料庫名稱: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仍然報相同的錯誤訊息
請問該怎麼改呢?
感謝閱讀
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.192.225.144 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1666427417.A.96A.html
討論串 (同標題文章)
Database 近期熱門文章
PTT數位生活區 即時熱門文章