2016-06-15 46 views
0

你好家伙我有一个名为ae_url的列,里面有youtube urls的mysql表,我想在youtube id后删除任何东西。例如: http://www.youtube.com/watch?v=1B6tWkbso1o&feature=youtu.be 删除“&功能= youtu.be”如何使用mysql在youtube id后删除任何内容?

有一些情况下,当一个播放列表来YouTube的ID后为好。

我该如何使用mysql查询来完成这个任务? 我必须更新列ae_url其由YouTube ID后去除任何东西包括YouTube网址的千

非常感谢你的善意帮助:)

回答

1

这将几乎落到你的头上,以确定是否youtube ID结束时有任何一致的标识符。

两个主要选项是:

1)确定当非ID字符进场(在这种情况下,“&”),并截断项

2)查看是否字符数在ID是一致的

对于实施例1,让我们假设该指标是 “&” 字符

ALTER TABLE your_table ADD COLUMN trunc_url string; 
UPDATE your_table SET trunc_url = 
    substring(ae_url, 1, --Start from first character 
    charindex("&",ae_url)-1) --Index end by wherever the "&" symbol is found for cutting off; 

希望这有助于!

0

为你做这项工作:

update tbl set ae_url = substr(ae_url, 1, locate('&', ae_url) - 1) 
where locate('&', ae_url) > 0 

+0

这几乎是我所有的YouTube网址的去除(好消息是,我一直在努力先复印) –

+0

看起来像有些人那样没有&在里面。尝试更新的答案(当然,首先在副本上)。 –

0

我终于得到了解决方案: UPDATE SET视频ae_url = LEFT(ae_url,LOCATE( '&',ae_url) - 1)WHERE ae_url LIKE '%&%';

它的工作出色

谢谢您的建议,以及

相关问题