我目前有以下两个表:搜索两个表
CREATE TABLE files_list
(
'listid' INT,
'name' VARCHAR(25),
'synonym' VARCHAR(25),
'description' VARCHAR(25)
);
CREATE TABLE files_tags
(
'tag_name' VARCHAR(25),
'listid' INT
);
如果有人使用关键字“龙珠”,此刻,我用下面的查询搜索my_list可能的匹配:
SELECT *
FROM files_list
WHERE name LIKE '%dragon%'
OR synonym LIKE '%dragon%'
OR description LIKE '%dragon%'
OR name LIKE '%ball%'
OR synonym LIKE '%ball%'
OR description LIKE '%ball%'
我不知道如何使用一个查询搜索两个表。我想向用户显示搜索结果中的数据:名称,同义词,描述和所有标签。
我的问题 1.有什么办法让当前的mysql查询更短吗? 2.如何将它与files_tags
表, 相结合 - 显示来自files_list
的行,它们在files_tags
中匹配,但不在files_list
? - 显示来自files_list
的行,其中有files_list, but may not in
files_tags`匹配?
你可以看到在http://hsbsitez.com/
http://stackoverflow.com/questions/394041/mysql-how-to-search-multiple-tables-for-a-string-existing-in-any-column看到这个问题,你的答案就在那里:) – fmsf 2009-01-24 22:31:42
[MySQL:如何搜索多个表的字符串现有的任何列](http://stackoverflow.com/questions/394041/mysql-how-to-search-multiple-tables-for-a-string-existing-in-any-column) – KindaTechy 2017-02-20 21:57:16