Mysql 从多个列中删除值

Mysql 从多个列中删除值,mysql,Mysql,我想删除值中包含%DJ%和%SD%字符的行。我还希望这个查询从两个不同的列进行检查。表名“location”,第一列名“start\u location”,第二列名“end\u location”。这是我要执行的sql查询: DELETE FROM location WHERE start_location like '%DJ%' and start_location like '%SD%' 及 所以我想一次执行这个查询。使用或: DELETE FROM location WHERE star

我想删除值中包含%DJ%和%SD%字符的行。我还希望这个查询从两个不同的列进行检查。表名“location”,第一列名“start\u location”,第二列名“end\u location”。这是我要执行的sql查询:

DELETE FROM location WHERE start_location like '%DJ%' and start_location like '%SD%'

所以我想一次执行这个查询。

使用

DELETE FROM location
WHERE start_location like '%DJ%' or start_location like '%SD%'
or end_location like '%DJ%' or end_location like '%SD%';
使用运算符的简短解决方案:

DELETE FROM location 
WHERE start_location REGEXP 'DJ|SD' AND end_location REGEXP 'DJ|SD';

注意:如果它应该通过删除,则将
列和
替换为

从起始位置(如“%DJ%”和起始位置(如“%SD%”)不起作用的位置删除。但从起始位置(如“%DJ%”)删除。您可能需要或到处删除。尝试我的更新查询
DELETE FROM location 
WHERE start_location REGEXP 'DJ|SD' AND end_location REGEXP 'DJ|SD';