Общие > Базы данных
Помогите составить запрос, плз
(1/1)
NР:
Люди, помогите, пожалуйста, правильно построить запрос mysql.
В базе имеется две таблицы.
В одной (picture) хранится информация, т.е. описание товара, в ряд включен идентификатор (столбец был почему-то назван notice) и номер категории в каталоге (id_cat).
Во второй (visiblestatus) содержится всего две колонки idvisible и idvisiblestatus
Первая колонка содержит значение идентификатора (в таблице picture он именуется как notice). Во второй колонке стоит статус - 1 или 0.
Так вот, не могу построить запрос по следующему алгоритму:
1. Выбрать ячейки notice из таблицы picture, id_cat=4.
2. Выбрать из таблицы visiblestatus значение idvisiblestatus, где notice=idvisible.
3. Вывести 10 строк из таблицы picture, у которых picture.id_cat=4 и visiblestatus.idvisiblestatus=0
Реально ли вообще сделать это одним запросом?
Заранее спасибо!
Макс:
--- Код: ---SELECT p.* FROM picture p
INNER JOIN visiblestatus v ON v.idvisible = p.notice
WHERE v.idvisiblestatus=0 AND p.id_cat=4 LIMIT 0,10
--- Конец кода ---
?
NР:
Макс, спасибо, работает.
Только вот долго запрос выполняется. В таблице visiblestatus 145 тясяч строк, в таблице picture 50 тысяч. Вот в этой таблице visiblestatus хранится информация о доступности товара (0 и 1).
Посоветуешь что-нибуь более оптимательное?
Макс:
по полям v.idvisible , p.notice индексы стоят ?
NР:
Нет, по этим полям индексы не стоят.
Навигация
Перейти к полной версии