PHP MySQL内连接问题

时间:2013-07-31 15:56:34

标签: php mysql sql database inner-join

基本上我有两个表:节点和自然。节点有一个自动递增的ID,大自然有一个“节点”列,这是我在这里关注的。节点列包含节点表中的分隔字符串ID(自然条目所在的节点)。

自然表中节点列的示例可能如下所示:

.1.10.597.598.599.600.

每个id前后都有句号,所以我可以搜索节点中的所有图像(WHERE节点LIKE'%。“。$ _ GET ['id']。”。%')例如。

那就是说我试图从节点表中选择自然表中有条目的所有条目。这是我到目前为止所得到的,但它返回一个空集。

SELECT *
FROM nodes A
INNER JOIN nature B
ON A.id LIKE '%.B.node.%'

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

尝试:

SELECT *
FROM nodes A
INNER JOIN nature B
ON B.node LIKE CONCAT('%.',A.id,'.%')

请注意,这非常昂贵,因为它可以防止使用索引。

请参阅fiddle

答案 1 :(得分:0)

使用CONCAT功能

ON A.id LIKE CONCAT('%.',B.node,'.%')