2016-03-08 36 views
0

我在SQLite中有一個名爲「allarmi_ingressi」的表,其中有很多行。 我想創建一個查詢,如果「visto = 0」,將列「visto」上的變量更改爲1,如果「visto = 1」則更改爲0。 這是我編:單行SQLite查詢SET變量

UPDATE allarmi_ingressi SET visto = '1' WHERE visto = '0' 

當然這個修改每一行中列「Visto公司」;

我想知道是否有可能修改它的主鍵「選擇」,在我的情況下「id_allarme」。

回答

0

在SELECT查詢,你可以使用WHERE子句來找到特定id_allarme值的行。

同樣的WHERE子句可以使用UPDATE使用:

UPDATE allarmi_ingressi 
SET visto = 1 - visto 
WHERE id_allarme = ?; 
0

使用CASE Expression

查詢

update allarmi_ingressi 
set visto = (
    case visto when '1' then '0' 
    when '0' then '1' 
    else visto end 
) 
where id_allarme = __; -- id here 
+0

這裏有什麼錯? – Wanderer

+0

我猜「單排」。 –

+0

感謝您的答案,因爲它可能是有用的,但我認爲這將更改所有列作爲我的舊查詢,而不是一個,因爲我想要的。 – MisAndreStood