Sql删除同一行和1用分隔符

时间:2015-04-22 22:23:02

标签: php mysql

我找不到合适的解决方案来删除带有分隔符的sql表中的多行。以下是此问题的示例:

id  token 
1]  c85456d5352a522a
2]  c85456d5352a522a_133_aaa
3]  c85456d5352a522a_133_aaa_203_bbb

如果原始令牌从相同的开始令牌开始是相同的,我需要删除所有这些令牌。

我不知道最好的方法是什么。

我已经测试过爆炸,但我不知道如何与修改后的令牌进行比较?

http://codepad.org/FZ29mC15

$orginal        = '4d4ff15544cdad8b';
$modified_token = '4d4ff15544cdad8b_7176_con_8009_con';
$test           = explode('_',$modified_token);
$result         = $test[0];

//I know, It's not logic now but i try...
if($orginal == $result){
    //Sql Delete request here
    echo 'Delete: '.$result;
}

比较原始令牌和爆炸令牌的好方法是什么?

1 个答案:

答案 0 :(得分:3)

使用LIKE匹配以令牌开头的模式。由于_是匹配任何字符的通配符,因此您需要将其转义。

DELETE FROM yourTable
WHERE token = '4d4ff15544cdad8b'
OR token LIKE '4d4ff15544cdad8b\_%'