[英]Sql query Inner join with specific data in string
假设:table2.Name的格式始终为正好1 #
hastag /井号/数字符号,后跟表1中的匹配数字。
SELECT T1.Name, T2.value
FROM table2 T2
INNER JOIN table1 T1
on T1.SR = substring_index(T2.Name,'#',-1);
从DOCS :
SUBSTRING_INDEX(str,delim,count)
在出现定界符delim之前,从字符串str返回子字符串。 如果count为正,则返回最后定界符左侧的所有内容(从左侧开始计数)。 如果count为负,则返回最后定界符右边的所有内容(从右边开始计数)。 搜索delim时,SUBSTRING_INDEX()执行区分大小写的匹配。
SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
'www.mysql'
SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);
'mysql.com'
免责声明:鉴于我们在联接上使用字符串操作,因此将无法使用任何索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.