SELECT name
FROM bd
WHERE name LIKE '%$query%'
UNION
SELECT name
FROM info
WHERE name LIKE '%$query%'
UNION
SELECT name
FROM users
WHERE name LIKE '%$query%'
如果确实要联接所有表,则需要分别为每个表指定名称匹配。
SELECT b.*, i.*, n.*
FROM bd AS b
CROSS JOIN info AS i
CROSS JOIN users AS u
WHERE b.name LIKE '%$query%' AND i.name LIKE '%$query%' AND u.name LIKE '%$query%'
1条答案
按热度按时间g6baxovj1#
使用
UNION
从多个表中获取结果并合并它们。如果确实要联接所有表,则需要分别为每个表指定名称匹配。
但是,这将创建每个表中所有匹配行的叉积,很难看出它有什么用处。如果其中任何一个表没有匹配的行,那么将生成一个空的叉积。