大家好我有一个mysql表,其中有一个名为ae_url的列,其中包含youtube网址,我想在youtube id后删除任何内容。例如: http://www.youtube.com/watch?v=1B6tWkbso1o&feature=youtu.be 删除“& feature = youtu.be”
在某些情况下,播放列表也会出现在youtube id之后。
如何使用mysql查询完成此任务? 我必须通过在youtube id之后删除任何内容来更新包含数千个youtube网址的列ae_url
非常感谢您的帮助:)
答案 0 :(得分: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;
希望这有帮助!
答案 1 :(得分:0)
这适合你吗?
update tbl set ae_url = substr(ae_url, 1, locate('&', ae_url) - 1)
where locate('&', ae_url) > 0
答案 2 :(得分:0)
我终于得到了解决方案: 更新视频SET ae_url = LEFT(ae_url,LOCATE('&',ae_url) - 1)WHERE ae_url like'%&%';
它工作得非常出色
感谢您的善意建议