Поиск в базе PHP или как я остался без вкуснейшего бутерброда!

Поиск в базе PHP или как я остался без вкуснейшего бутерброда!

От автора: хорошо натренированный пес всегда возьмет след! Но даже он не поможет найти нужную информацию в MySQL. Сегодня мы рассмотрим, как происходит поиск базе PHP. И как в этом деле обойтись без друга человека.

Как искать?

В одном из прошлых уроков мы рассматривали вывод данных в MySQL. Я рассказал вам, что для этого используются запросы SQL. Точнее, только одна команда – SELECT. Но в том раз я кое о чем умолчал: ее можно использовать не только для выборки данных и сортировки, но и для поиска.

Чтобы найти конкретную строку, отвечающую заданному условию, применяется оператор where. Для демонстрации всех примеров предлагаю перейти в phpMyAdmin.

Предположим, что нужно осуществить с помощью PHP поиск в базе MySQL. Нам надо найти строку, в которой значение столбца Name равно Aruba. Чтобы «отсеять» эту строку из всей таблицы, следует составить правильный запрос.

Вспоминаем все вышесказанное и принимаемся за дело. Первоначально разбираемся с условиями, которым должна соответствовать найденная строка. И со столбцами, значение которых должен вернуть запрос.

Сказано, что в искомой строке значение столбца Name должно быть равно указанному. Это условие мы пропишем после оператора where. Все ли данные из этой строки нужно отображать? Предположим, что да:

Поиск в базе PHP или как я остался без вкуснейшего бутерброда!

Усложняем запросы

Но не единым запросом живет MySQL :). У данной СУБД этих запросов, хоть завались! Можно и «завалиться», если не знать, как их правильно составлять. Тогда PHP поиск в базе данных превратится в настоящий кошмар. Но так как мы не любим ужастики, то рассмотрим еще несколько запросов для нахождения искомого в БД MySQL.

Если требуется вывести не все значения строки, тогда в команде прописываем нужные. Пример:

Поиск в базе PHP или как я остался без вкуснейшего бутерброда!

После SELECT мы указали те столбцы, значения которых нам интересны. Но в двух предыдущих примерах поиск происходит только по строковым значениям. А в БД могут храниться и другие типы данных. Например, числовые:

Я немного «перекроил» предыдущий запрос, задав в качестве условия значение числового столбца. Хотя оба запроса вернут один и тот же результат. Доказательство:

Поиск в базе PHP или как я остался без вкуснейшего бутерброда!

Кроме этого можно расширить рамки сортировки, и вывести строки таблицы, в которых числовое значение меньше или больше заданного. Например, выведем страны, где «популяция» больше 103000:

Или больше:

Но в обоих случаях мы теряем искомую строку – родимую Aruba :). Чтобы включить ее в результат выборки, следует использовать другой оператор сравнения. Больше или равно:

Меньше или равно:

Благодаря этим оператором родимая Aruba никуда из выборки не делась:

Поиск в базе PHP или как я остался без вкуснейшего бутерброда!

Пока все. Теперь я уверен, что ваш поиск по базе данных MySQL и PHP увенчается успехом, и для этого не потребуется опытная собака-ищейка. Хотя мне, наверное, понадобится… Пока писал материал, мой «домашний друг человека» стащил со стола вкуснейший бутерброд с колбасой и ветчиной. Но деваться некуда – с друзьями нужно делиться :).

Метки:

Похожие статьи:

Комментарии Вконтакте: