亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問如何在SQLite上連接表時進行更新?

請問如何在SQLite上連接表時進行更新?

阿晨1998 2019-11-06 09:05:56
如何在SQLite上連接表時進行更新?我試過:UPDATE closure JOIN item ON ( item_id = id ) SET checked = 0 WHERE ancestor_id = 1以及:UPDATE closure, item  SET checked = 0 WHERE ancestor_id = 1 AND item_id = id這兩種方法都適用于MySQL,但這給我帶來了SQLite中的語法錯誤。如何使此更新/連接與SQLite版本3.5.9一起工作?
查看完整描述

3 回答

?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

不行,SQLite不支持UPDATE語句中的聯接.

但是,您可能可以使用子查詢來實現這一點:

UPDATE closure SET checked = 0 
WHERE item_id IN (SELECT id FROM item WHERE ancestor_id = 1);

或者類似的東西;還不清楚您的模式到底是什么。



查看完整回答
反對 回復 2019-11-07
?
慕萊塢森

TA貢獻1810條經驗 獲得超4個贊

您也可以使用取代然后,可以將選擇與聯接一起使用。就像這樣:

REPLACE INTO clusure 
 SELECT sel.col1,sel.col2,....,sel.checked --checked should correspond to column that you want to changeFROM (
 SELECT *,0 as checked FROM closure LEFT JOIN item ON (item_id = id) 
 WHERE ancestor_id = 1) sel



查看完整回答
反對 回復 2019-11-07
  • 3 回答
  • 0 關注
  • 416 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號