簡體   English   中英

使用正則表達式的UPDATE SQL語句

[英]UPDATE SQL statement using regex

我有2個表,一個命名為圖片,另一個命名為媒體,在表pictures我具有包含一些文本的字段description ,在表media有我要更新的行url 我需要編寫一個sql查詢來更新表媒體中的行url該媒體使用regex作為表picturesdescription的特定字符串,可以用一個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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM