INPVLSA
@INPVLSA
Типо Full-Stack

Как с помощью JOIN получить несколько значений?

Приветствую. Пишу запрос ручками для извлечения товаров WooCommerce и привязки их к категориям, но столкнулся с проблемой.

Есть следующий запрос к БД WordPress:
SELECT 
       wp.`ID`, 
       wp.`post_title` as title, 
       wp.`post_name` as slug, 
       wtr.`term_taxonomy_id` as category, 
       wt.`name` as category_name  
FROM `wp_posts` as wp 
  INNER JOIN `wp_term_relationships` as wtr 
    ON wp.ID = wtr.object_id 
  INNER JOIN `wp_terms` as wt 
    ON wt.`term_id` = wtr.`term_taxonomy_id`
WHERE 
      `post_type` = 'product' AND 
      `post_status` = 'publish'


Все чудесно работает, но загвоздка в том, что некоторые товары содержат несколько категорий в таблице wp_term_relationships:
5c73dc5d80f7b942059347.png

Есть ли какой-то способ получения нескольких элементов таблицы?

Очень приветствуются альтернативные решения, советы по делу. Заранее благодарен.
  • Вопрос задан
  • 130 просмотров
Решения вопроса 1
Ну так Ваш запрос и возвращает несколько категорий
spoiler
5c73e2d564597815145639.jpeg
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
tsklab
@tsklab
Здесь отвечаю на вопросы.
LEFT JOIN `wp_terms` as wt 
    ON wt.`term_id` = wtr.`term_taxonomy_id`
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы