Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在on值上带有前缀的SQL联接_Mysql_Sql_Select_Join - Fatal编程技术网

Mysql 在on值上带有前缀的SQL联接

Mysql 在on值上带有前缀的SQL联接,mysql,sql,select,join,Mysql,Sql,Select,Join,我有两张表,t1包含email和phonet2包含前缀邮件prefixEmail是以活动代码为前缀的电子邮件地址,例如:'4382_john@test.com“或”圣诞节15_john@test.com“ 我要执行以下连接(伪代码): 结果应该是一个包含电子邮件和电话的表格john@test.com但是sarah@test.com不应包含在结果中,因为她不在t2.prefixEmail中 小结:如果t1中的电子邮件是t2中的值的一部分,如何进行联接?将t2.prefixEmail放入's中,您将

我有两张表,
t1
包含
email
phone
<代码>t2包含
前缀邮件
prefixEmail
是以活动代码为前缀的电子邮件地址,例如:
'4382_john@test.com“
”圣诞节15_john@test.com“

我要执行以下连接(伪代码):

结果应该是一个包含电子邮件和电话的表格john@test.com但是sarah@test.com不应包含在结果中,因为她不在t2.prefixEmail中


小结:如果t1中的电子邮件是t2中的值的一部分,如何进行联接?

t2.prefixEmail
放入
'
s中,您将其视为字符串文本。相反,您可以在其两侧连接
%
s:

SELECT 't1.email', 't1.phone' 
FROM
  t1 JOIN t2
  ON t1.email LIKE CONCAT('%', REPLACE(t2.prefixEmail, '%', '\%'), '%')
SELECT t1.email, t1.phone
FROM   t1
JOIN   t2 ON t1.email LIKE CONCAT('%', t2.prefixEmail, '%')

“t1.email”是一个字符串。
SELECT t1.email, t1.phone
FROM   t1
JOIN   t2 ON t1.email LIKE CONCAT('%', t2.prefixEmail, '%')