2014-01-18 2 views
0

У меня есть сайт, на котором я хочу разрешить пользователям искать как несколько ключевых слов в виде строки. Предположим, у меня есть 3 стола: Subject, Level и users. Если пользователь ищет Primary Computer Science Male Test, Я хочу показать результаты объединения трех таблиц. То есть Primary из таблицы Level и computer Science из таблицы Subjects и остающейся от таблицы user. Если пользователь ищет computer science, просто покажите результаты из таблицы Subject. Как это возможно, используя запрос MYSQL?Поиск из нескольких таблиц в php

+0

Я думаю, что это область обработки естественного языка. У меня нет обширных знаний об этом. – ariefbayu

ответ

0
вход

Пользователя:

Computer Primary 

Compose запрос таким образом:

select * 
from Subject as s join level as l on s.id = l.subject_id 
    join users as u on u.subject_id = s.id 
where 
    l.name = :firstterm or s.name = :firstterm or u.name = :firsterm or 
    l.name = :secondterm or s.name = :secondterm or u.name = :secondterm 

Где: firsterm является первым термином пользовательского ввода и: secondterm является scond раз

Смежные вопросы