Поиск по двум таблицам. Пример SQL-запроса.

Всем привет...

Я прошу прощения за такие пробелы в написании статей, я очень-очень занят, разрабатываю сайт на заказ, и поэтому времени практически нет...

Сегодняшняя тема - поиск по 2 таблицам базы данных MySQL.

И так, чтобы не тянуть кота за хвост, начинаем сразу, и вам лучше, и мне хорошо... Так вот, сейчас я вам дам все ссылки, и сам SQL-запрос для создания поиска практически на любом сайте.

Что же нужно для создания поиска, как обычно нужен PHP если сайт на нём, нужен SQL-запрос, без него не получиться искать по базе данных MySQL, так как язык запросов SQL создан для данной базы данных, и чуть не забыл сказать что нужна база данных, и таблица в ней(например со статьями).

Теперь мы примерно знаем что нужно для поиска по базе данных.

Теперь приступим к шаблону запроса SQL:
SELECT
    <поля>
FROM
    <таблица1> t1
    INNER JOIN <таблица2> t2
        ON <условие связи таблиц>
WHERE
    <поле для поиска в таблице1> LIKE '%<фраза>%'
    <другие условия>
ORDER BY
    t1.id DESC
LIMIT
    0,10

Надеюсь вам шаблон понятен, и легко читаем, но у вас может быть очень много вопросов, например зачем я поставил в шаблон команду LIMIT 0, 10, ответ на данный вопрос - чтобы выводить записи по частям, тоесть вывод будет только 10 последних записей, такой толчёк может дать вам понять, что поиск будет очень удобным если в нём будет постраничная навигация. Вопрос №1 - Что такое INNER JOIN, ответ так же прост, это команда для соединения 2 или более таблиц в одну выборку, по ней очень много информации, настолько много, что я даже не стал по ней писать статью, уже и так всё разжовано, есть кстати ещё LEFT JOIN, RIGHT JOIN и ещё много подобных команд. Советую почитать про все, хотя на практике чаще всего нужен INNER JOIN. Вопрос №2 - Зачем нам нужен LIKE, данная команда является поисковой, и её очень многие используют, в том числе и я её использовал создавая поиск по данному сайту. Также существуют уже готовые мощные поисковые движки/библиотеки, например почитайте про Sphinx. Если вы новичок в сайтостроении, и web-программировании, то у вас скорее всего накопилась ещё масса вопросов, которые тут обсуждать безсмысленно, если вам что-то непонятно, напишите это в комментарии ниже, и я обязательно отвечу.
Теги:
Поиск, SQL-запрос
Добавлено: 30 Апреля 2018 11:41:23 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...