【发布时间】:2013-01-19 17:54:12
【问题描述】:
我想做一个连接,其中一列包含另一个表列中的字符串:
SELECT
a.first_name,
b.age
FROM names a
JOIN ages b
ON b.full_name LIKE '%a.first_name%'
这可能吗?我正在使用 MySQL。当然,上面的查询不会起作用,因为 LIKE '%a.first_name%' 只会查找字符串 a.first_name,而不是列的实际值。
【问题讨论】:
-
如果你在字符串的开头有一个 % ,它将无法使用你在那个 b.full_name 列上的任何索引。只是让你知道,如果你在这里有一个相当大的数据库,你的表现会很糟糕。
-
你会得到你想要的。所以如果名字是 Jo,你会得到 josephine、josiline、jobob、jody、joseph 等。