我有幾個不同的網站,用戶可以訂閱我的簡報。我使用sendy作爲我的簡報,並且遇到了一些問題。 Sendy的數據庫結構允許相同的電子郵件地址在數據庫中多次。每封電子郵件都有自己的ID,唯一的ID和列表ID是問題的一部分。
當有人從不同的網站註冊時,他們會轉到不同的列表。
如果有人從一個List ID中取消訂閱,那麼該記錄會得到一個未取消的值'1'。我想在數據庫中將其電子郵件地址的所有實例更新爲值'0'(如果他們從不同站點註冊的話)到其電子郵件的所有實例都具有'1'
我已經看過以下答案,但似乎無法讓我的頭正確地包裹答案。
mysql - UPDATEing row based on other rows
Updating rows based on other rows in the same table
這是結構的一部分MySQL +根據一行的值更新行數
Name Type Attributes Null Default Extra
id int(11) UNSIGNED No None AUTO_INCREMENT
email varchar(100) Yes NULL
list int(11) Yes NULL
這是進出口尋找
id email list unsubscribed
1 [email protected] 1 1
2 [email protected] 2 0
3 [email protected] 3 0
什麼,我需要確定一個電子郵件地址有一個退訂的例子值爲'1',那麼具有'0'的該電子郵件地址的所有其他發生更新爲'1'
這應該在PHP中完成還是可以在MySql中自動執行?
完美的作品,太感謝你了! – Semon