mysql获取字符左侧的字符串,并将其与另一列进行比较

mysql获取字符左侧的字符串,并将其与另一列进行比较,mysql,string-comparison,string-split,Mysql,String Comparison,String Split,我正在运行这个sql查询 SELECT DISTINCT a.user_login, a.user_email, c.domain FROM wp_users a JOIN wp_usermeta b ON a.id = b.user_id JOIN wp_blogs c ON b.meta_value = c.site_id WHERE meta_key = 'primary_blog' and ORDER BY `a`.`ID` ASC LIMIT 0 , 100 结果 user_

我正在运行这个sql查询

SELECT DISTINCT  a.user_login, a.user_email, c.domain
FROM wp_users a
JOIN wp_usermeta b ON a.id = b.user_id
JOIN wp_blogs c ON b.meta_value = c.site_id
WHERE meta_key =  'primary_blog' and
ORDER BY  `a`.`ID` ASC 
LIMIT 0 , 100
结果

user_login        user_email                domain
abc               xys@example.com           laskdlasd.com
cdestefano        cdestefano@example.com    kaskdjkasjdkasd
fran              fran@example.com          kasdllasdlasd
我只需要其中用户登录不等于@之前的字符串的行,即从上面的结果中,我只需要下面的行

abc               xys@example.com           laskdlasd.com
我尝试了下面的代码,但它不起作用

SELECT DISTINCT a.user_login, a.user_email, c.domain
FROM wp_users a
JOIN wp_usermeta b ON a.id = b.user_id
JOIN wp_blogs c ON b.meta_value = c.site_id
WHERE meta_key =  'primary_blog'
AND a.user_login != LEFT( a.user_email, LOCATE(  '@', a.user_email ) ) 
ORDER BY  `a`.`ID` ASC 
LIMIT 0 , 100

如何获得所需的结果?

将此添加到
WHERE
子句中

AND SUBSTRING(REPLACE(user_email, user_login, ''), 1, 1) <> '@'
和子字符串(替换(用户电子邮件,用户登录),1,1)@
试试看

SELECT *
FROM wp_users a
JOIN wp_usermeta b ON a.id = b.user_id
JOIN wp_blogs c ON b.meta_value = c.site_id
WHERE user_login  != substring_index(user_email,'@',1)