[英]How to make a multiple update on mysql with string replace with value of another column
您好,我是 mysql 的新人,我必須在我的桌子上運行多次更新。 我在表中有 700 條記錄,我必須以這種方式更新它們:
表示例:store_id: 1 store_email: storename@gmail.com
對於我使用的單個更新
UPDATE stores SET email = '1@gmail.com' WHERE id = 1;
我需要更新所有的電子郵件並用他們的 ID 替換他們的名字,所以它會是這樣的:
storename@gmail.com --> 1@gmail.com
storename@gmail.com --> 2@gmail.com
storename@gmail.com --> 3@gmail.com
這些數字必須是每個商店的 ID。
希望你能明白
感謝幫助。
PS 我需要在 magento 2 上運行它
您可以使用CONCAT()
和RIGHT()
function 來像這樣操作字符串:
UPDATE stores SET email = CONCAT(id, RIGHT(email, 9));
RIGHT('string', n)
function 從字符串(從右邊開始)中提取 n 個字符(storemail = 9 個字符)。
由於您要將 id 添加到 String 列 gmail,因此您可以像下面這樣使用 contact() 函數:
UPDATE stors SET email=CONCAT(id, "@gmail.com") where id=2;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.