Я пытаюсь объединить два запроса, но не могу получить никаких результатов. Пожалуйста, помогите мне присоединиться к этим запросам.
Первый запрос ==>
SELECT *,all_posts.id as lid,all_posts.image as lpimage, users.image as uimage,all_posts.post_for_id as typ_id FROM all_posts LEFT JOIN users on all_posts.user_id = users.id WHERE all_posts.parent_id = 0 order by lid desc limit 5;
Этот запрос возвращает все сообщения независимо от поля "access" => Publi c, Friends, NULL
Нажмите здесь для результата
Пример данных ===== таблица всех_позиций
id user_id image post_type post_date access
== ======== ===== ======= ========= =====
4526 1663 undefined image 2020-03-07 06:47:04 Public
4523 196 undefined image 2020-03-07 06:47:04 Friends
Таблица пользователей =>
id name
== ========
1663 test1
196 test2
1966 test3
Таблица друзей -
id from_id to_id add_date
== ======== ===== =======
316 196 1966 2019-10-15
Второй запрос ==>
SELECT count(*) as isfriend from friend where (from_id=:from_id and to_id=:user_id) or (from_id=:user_id and to_id=:from_id)
Этот запрос возвращает 1 или 0, поскольку текущий пользователь является другом другого пользователя (В В моем случае я хочу проверить каждый user_id из приведенного выше результата Query1). Нажмите здесь , чтобы получить результат. Мой запрос ==>
SELECT *,all_posts.id as lid,all_posts.image as lpimage, users.image as uimage,all_posts.post_for_id as typ_id FROM all_posts LEFT JOIN users on all_posts.user_id = users.id WHERE user.id = 1(SELECT count(*) as isfriend from friend where (from_id=:from_id and to_id=:user_id) or (from_id=:user_id and to_id=:from_id)) all_posts.parent_id = 0 order by lid desc limit 5;
Я хочу запрос, в котором я могу получить все публикации Publi c из первого запроса, а также сообщения, имеющие " Доступ "как" Друзья "И user_id является другом текущего пользователя. Это означает, что я должен соединить эти два запроса, чтобы получить это. Пожалуйста, помогите мне сделать это правильно. Thankyou.