Я сталкиваюсь с той же проблемой с библиотекой API Reactive Location API для Android и RxJava 2 . Простое обновление build.gradle до 3.0.1 и сокращение библиотеки API-интерфейсов Reactive Location для Android и RxJava 2 версия библиотеки от 1.0.4 до 1.0.3. В моем случае она отлично работает.
Я неправильно понял Вас. Я думал, что Вы хотели Ядерный или Соглашения. Ниже должен дать Вам только Ядерный и Соглашения.
select p.*
from wp_posts p, wp_terms t, wp_term_taxonomy tt, wp_term_relationship tr,
wp_terms t2, wp_term_taxonomy tt2, wp_term_relationship tr2
wp_terms t2, wp_term_taxonomy tt2, wp_term_relationship tr2
where p.id = tr.object_id and t.term_id = tt.term_id and tr.term_taxonomy_id = tt.term_taxonomy_id
and p.id = tr2.object_id and t2.term_id = tt2.term_id and tr2.term_taxonomy_id = tt2.term_taxonomy_id
and p.id = tr3.object_id and t3.term_id = tt3.term_id and tr3.term_taxonomy_id = tt3.term_taxonomy_id
and (tt.taxonomy = 'category' and tt.term_id = t.term_id and t.name = 'Category1')
and (tt2.taxonomy = 'post_tag' and tt2.term_id = t2.term_id and t2.name = 'Nuclear')
and (tt3.taxonomy = 'post_tag' and tt3.term_id = t3.term_id and t3.name = 'Deals')
Попробуйте это:
select p.*
from wp_posts p,
wp_terms t, wp_term_taxonomy tt, wp_term_relationship tr
wp_terms t2, wp_term_taxonomy tt2, wp_term_relationship tr2
where p.id = tr.object_id
and t.term_id = tt.term_id
and tr.term_taxonomy_id = tt.term_taxonomy_id
and p.id = tr2.object_id
and t2.term_id = tt2.term_id
and tr2.term_taxonomy_id = tt2.term_taxonomy_id
and (tt.taxonomy = 'category' and tt.term_id = t.term_id and t.name = 'Category1')
and (tt2.taxonomy = 'post_tag' and tt2.term_id = t2.term_id and t2.name in ('Nuclear', 'Deals'))
По существу я использую 2 копии подходящих дочерних таблиц - условия, term_taxonomy, и term_relationship. Одна копия вводит ограничение 'Category1', другой 'Ядерное' ограничение или ограничение 'Соглашений'.
BTW, какой проект - это с сообщениями все о ядерных соглашениях? Вы пытающийся получить нас в некотором правительственном списке?;)
Какая грубая структура DB.
Так или иначе я сделал бы что-то вроде этого (обратите внимание, что я предпочитаю, СУЩЕСТВУЕТ к соединениям, но можно переписать их как соединения, если Вам нравится; большая часть запроса анализаторы свернет их к тому же плану запросов так или иначе). Вам, вероятно, придется сделать некоторое дополнительное манипулирование так или иначе, чтобы заставить его работать...
SELECT *
FROM wp_posts p
WHERE EXISTS( SELECT *
FROM wp_term_relationship tr
WHERE tr.object_id = p.id
AND EXISTS( SELECT *
FROM wp_term_taxonomy tt
WHERE tt.term_taxonomy_id = tr.term_taxonomy_id
AND tt.taxonomy = 'category'
AND EXISTS( SELECT *
FROM wp_terms t
WHERE t.term_id = tt.term_id
AND t.name = "Category1"
)
)
AND EXISTS( SELECT *
FROM wp_term_taxonomy tt
WHERE tt.term_taxonomy_id = tr.term_taxonomy_id
AND tt.taxonomy = 'post_tag'
AND EXISTS( SELECT *
FROM wp_terms t
WHERE t.term_id = tt.term_id
AND t.name = "Nuclear"
)
AND EXISTS( SELECT *
FROM wp_terms t
WHERE t.term_id = tt.term_id
AND t.name = "Deals"
)
)
)
Таким образом, я попробовал обе опции на своем дб WordPress. Я искал категорию "Tech" в своих сообщениях с тегами "Perl" И "Программирование".
Eric работал, после того как я добавил недостающую запятую в начальном избранном операторе. Это возвратило 3 записи. Проблема состоит в том, что раздел, который ищет "post_tag", на самом деле работает ИЛИ опция. Одно из моих сообщений только имело один тег не оба. Также было бы хорошо сделать ВЫБОР ОТЛИЧНЫМ.
Я попробовал версию Matt, но это продолжало возвращать пустое множество. Я могу попытаться "манипулировать" им.
Действительно так большой ответ.. помогший меня много..
большой bcoz., это дало мне основной подход для создания моего сложного запроса!
одно маленькое исправление, для готовых пользователей как я :)
"wp_term_relationship" даст, 'не существует ошибка'.. используйте wp_term_relationships, поскольку это - корректное имя таблицы.
Спасибо Eric
Спасибо @Eric это работает! Всего несколько исправлений кода для дальнейшего использования:
wp_terms t2, wp_term_taxonomy tt2, wp_term_relationship
tr2
должен быть
wp_terms t3, wp_term_taxonomy tt3, wp_term_relationship
tr3