Простая строка поиска в реляционной базе данных

0

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

Фоновая информация: я создаю базу данных для моего портфолио фотографий и хочу иметь возможность получать ссылки на изображения/данные через свои категории. Каждое изображение может быть указано в нескольких категориях.

Моя база данных настроена следующим образом:

ТАБЛИЦА tbl_images (image_id, image_title, image_location, image_descrip, image_url)

ТАБЛИЦА tbl_categories (category_id, category_name, category_descrip)

ТАБЛИЦА tbl_image_categories (image_id, category_id)

Если одно из моих изображений (image_id = 1) имеет две категории (Desert [category_id = 1] и Winter [category_id = 2]). Что я определил в tbl_image_categories как 1,1 и 1,2.

У меня также есть несколько других изображений, которые я определил как Desert images [category_id = 1].

Как я могу получить, какие изображения должны быть загружены на основе категории Desert?

Я пробовал:

SELECT tbl_images.image_url
FROM tbl_images,
tbl_image_categories,
tbl_categories
WHERE tbl_categories.category_id = 1
Теги:
search
relational-database

1 ответ

0

Попробуйте следующее:

SELECT DISTINCT tbl_images.image_url
FROM tbl_images,
tbl_image_categories,
tbl_categories
WHERE chad_categories.category_id = 1 //category_id=1 for Desert
AND chad_images.image_id = chad_image_categories.image_id
AND chad_image_categories.category_id = chad_categories.category_id
  • 0
    Аааа ВЫБЕРИТЕ DISTINCT. Это сработало :) Спасибо большое. Я также понял, что я наклеил это неправильно на нижней части, в другой. Я пойду и изменю это. Еще раз спасибо!
  • 0
    Также обратите внимание, что вы должны фильтровать по category_id = 1, а не image_id = 1, если вы хотите использовать весь имиджер для категории Desert.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню