我想搜索多个列和多个表。
我在这里将所有表导入 sqlfiddle:http ://www.sqlfiddle.com/#!2/60689e/3
我想选择的是user id, name_surname, avatar, from users table
基于关键字,匹配列“位置”或用户表中的“姓名姓氏”。这个比较简单:
SELECT u.name_surname,
u.avatar,
u.location
FROM users u
WHERE u.location LIKE :kwd
OR u.name_surname LIKE :kwd
对我来说棘手的部分是查询表以查找 words_en表中的匹配项,该表本质上应该针对连接表进行查询,在该表中我实际上可以看到哪个用户与哪个单词相关联......我该怎么做最后一部分让我无法理解。
所以我可能需要:
- 查询 words_en 并找出是否有匹配项。
- 如果有匹配项,我需要查看 word_en 单词的 id 并查看该 id 是否存在于连接表中。
- 从连接表中选择不同的 user_ids。
- 为选定的 user_ids 选择 name_surname。
感谢您的关注。S。