Как найти продукты WordPress WooCommerce с конкретными SKU, которые не имеют назначенных категорий или брендов?MySql

Форум по Mysql
Ответить
Anonymous
 Как найти продукты WordPress WooCommerce с конкретными SKU, которые не имеют назначенных категорий или брендов?

Сообщение Anonymous »


Я пытаюсь написать запрос SQL для некоторых вопросов для WordPress и woocommerce, но я работаю в задачи. Моя цель - найти все продукты из определенного списка SKU, которые не имеют назначенных категорий и не назначенных брендов. Некоторые продукты, которые должны быть в результатах (потому что у них нет категорий или брендов), отсутствуют. Такое ощущение, что запрос выбирает и выбирает случайным образом из моего списка SKU, возвращая смесь правильно незнашиваемых продуктов и неправильно назначенных.

Код: Выделить всё

SELECT p.ID, p.post_title, pm.meta_value AS sku
FROM wp_posts p
JOIN wp_postmeta pm ON p.ID = pm.post_id AND pm.meta_key = '_sku'
LEFT JOIN wp_term_relationships tr_cat ON p.ID = tr_cat.object_id
LEFT JOIN wp_term_taxonomy tt_cat ON tr_cat.term_taxonomy_id = tt_cat.term_taxonomy_id AND tt_cat.taxonomy = 'product_cat'
LEFT JOIN wp_terms t_cat ON tt_cat.term_id = t_cat.term_id
LEFT JOIN wp_term_relationships tr_brand ON p.ID = tr_brand.object_id
LEFT JOIN wp_term_taxonomy tt_brand ON tr_brand.term_taxonomy_id = tt_brand.term_taxonomy_id AND tt_brand.taxonomy = 'pa_brand'
LEFT JOIN wp_terms t_brand ON tt_brand.term_id = t_brand.term_id
WHERE pm.meta_value IN (
  '122.0021.446','122.0021.448','101.0021.601','122.0654.849','127.0655.168','127.0655.169',
  '127.0543.036','101.0656.141','101.0656.176','101.0656.177','101.0656.178','101.0656.179',
  '122.0654.850','101.0656.159','101.0656.160','101.0656.161','101.0656.162','101.0656.163',
  '101.0656.155','101.0656.158','101.0656.156','101.0086.284','101.0150.821','101.0086.271',
  '101.0085.849','122.0654.853','122.0654.854','127.0490.533','127.0490.531','127.0655.170',
  '122.0654.855','127.0655.171','122.0654.852','122.0654.856','122.0654.851','122.0694.479',
  '122.0694.477','122.0654.857','127.0655.174','127.0655.172','122.0654.859','122.0654.858',
  '127.0655.173','127.0638.907','127.0638.908','127.0638.946','127.0638.947','127.0650.364',
  '127.0662.643','127.0662.644','127.0650.363','127.0059.655','127.0059.654','127.0059.717',
  '127.0059.658','101.0656.164','101.0656.166','101.0656.167','101.0656.165','101.0656.172',
  '101.0656.174','101.0656.173','101.0656.175','101.0656.169','101.0656.171','101.0656.168',
  '101.0656.170','101.0021.585','101.0692.523','101.0263.858','101.0656.151','101.0656.152',
  '101.0485.947','101.0688.504','101.0688.505'
)
AND (
  t_cat.name NOT IN ('Çelik Evye','Mutfak Evye & Lavabosu','Mutfak Su Sistemi')
  OR t_cat.term_id IS NULL
  OR t_brand.name != 'Franke'
  OR t_brand.term_id IS NULL
);
Поэтому я просто хочу найти продукты из списка SKU, который я предоставил, что соответствует любым из следующих условий:
Категория не назначена.
только одна категория назначена. />etc.

Подробнее здесь: https://stackoverflow.com/questions/797 ... e-no-assig
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»