[英]UPDATE SQL statement using regex
我有2個表,一個命名為圖片,另一個命名為媒體,在表pictures
我具有包含一些文本的字段description
,在表media
有我要更新的行url
。 我需要編寫一個sql查詢來更新表媒體中的行url
該媒體使用regex作為表pictures
中description
的特定字符串,可以用一個sql查詢來完成嗎?
您可以使用REGEXP搜索字符串,但不能返回結果。 如果還可以,那么您可以嘗試執行以下操作:
如果您的桌子是這樣的:
create table media(media_id int, url varchar(200));
create table pictures(pic_id int, media_id int, description text);
您可以執行以下操作:
UPDATE pictures p
LEFT JOIN media m
ON p.media_id = m.media_id
SET url='http://newurl.com/pic.jpg'
WHERE REGEXP '.*regexpString$';
如果您只需要替換部分網址,則可以嘗試:
UPDATE pictures p
LEFT JOIN media m
ON p.media_id = m.media_id
SET url=REPLACE(url, 'olddomain.com', 'newdomain.com')
WHERE REGEXP '.*regexpString$';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.