У меня в настоящее время есть две таблицы:
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/