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

看板Database (資料庫)作者 (薯)時間2年前 (2022/10/22 16:30), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
資料庫名稱: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
文章代碼(AID): #1ZKwePbg (Database)
文章代碼(AID): #1ZKwePbg (Database)