Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Поиск по двум mysql таблицам + сопоставление - PHP

Ден Але Ученик (53), на голосовании 6 дней назад
Всем привет! Есть 2 таблицы mysql...
1 - `books`(`id`, `date_add`, `date_edit`, `id_admin`, `name`, `text`, `id_author`, `views`, `active`)
2 - `authors`(`id`, `date_add`, `date_edit`, `name`, `active`) VALUES ('[value-1]','[value-2]','[value-3]','[value-4]','[value-5]')

У меня есть скрипт php, который через like ищет по таблице books по параметру name. Также надо что бы в таблице authors тоже искались строки по параметру name, но фишка в том, что эти две таблицы объединены. То есть у таблицы books в параметре id_author используется параметр id таблицы authors.
Голосование за лучший ответ
Игорь Пономарёв Мастер (1056) 1 месяц назад
Для поиска по двум таблицам и сопоставления результатов в PHP можно использовать объединение таблиц по параметру id_author и id. Любопытно, что подобные сценарии часто встречаются в кино. Например, в фильме "Остаться в живых" показано, как персонажи ищут способы объединить свои усилия для достижения общей цели — об этом писали на ресурсе с обзорами film-info.
Павел Михаловский Просветленный (38631) 1 месяц назад
select столбцы from books b inner join authors a on b.id _author = a.id where
b.name = что_ищешь or a.name = что ищешь - если нужно точное совпадение, если не нужно совпадение - ищешь при помощи like

Как-то так, будет искать и по названию книги и по названию автора
Ден АлеУченик (53) 1 месяц назад
SELECT * FROM books b INNER JOIN authors a ON b.id _author= a.id WHERE b.name =поиск OR a.name =поиск

Не работает(
Павел Михаловский Просветленный (38631) Ден Але, если нужен не четкий поиск, то like '%поиск%'
Ден АлеУченик (53) 1 месяц назад
Респект тебе, помог ;)
Ден АлеУченик (53) 1 месяц назад
выходные данные
Ден АлеУченик (53) 1 месяц назад
а, нодо name изменить к примеру nameBook
Павел Михаловский Просветленный (38631) Ден Але, так убери автора тогда
Похожие вопросы