Я пытаюсь отобразить данные, используя 3 таблицы
posts
- id
- category_id
- user_authors_id
- title
- status
user_authors
- id
- author_name
categories
- id
- name
subcategories
- id
- name
Я пытаюсь сделать это.Я создаю панель просмотра, которая будет отображать сообщения.Итак, я использую 3 таблицы.От user_authors я получу имя автора, из таблицы категорий я получу имя категории, теперь у таблиц категорий есть идентификатор подкатегории, поэтому я также хочу получить имя подкатегории.
У меня две строкив таблице posts
с идентификатором 29 and 30
, но когда я запускаю приведенный ниже запрос, он показывает 2 записи с одинаковыми данными.
SELECT
posts.id,
categories.name AS cat_name,
subcategories.name AS subcat_name,
posts.title,
user_authors.author_name,
posts.created,
posts.status
FROM posts
INNER JOIN user_authors ON (user_authors.id = posts.user_author_id)
INNER JOIN categories ON(posts.category_id = categories.id)
INNER JOIN subcategories ON (categories.id = subcategories.category_id)
Но, если я удалю этот оператор INNER JOIN subcategories ON (categories.id = subcategories.category_id)
и выполню запрос, он работает отлично, все строки показывает правильно.
Что происходит, я не пытаюсь понять это.Где неправильный запрос, также он не показывает ошибки.