これを試してください:
SELECT a.name_surname,GROUP_CONCAT(Distinct w.word Order by w.word asc) AS words
FROM (
SELECT f1.asked_user_id AS friend_id,
f1.created,
u.name_surname,
u.avatar
FROM friends AS f1
INNER JOIN friends AS f2 ON f1.asked_user_id = f2.asker_user_id
INNER JOIN users AS u ON f1.asked_user_id = u.id
AND f1.asker_user_id = f2.asked_user_id
AND f1.asker_user_id = 1
WHERE f1.status = 1 AND f2.status = 1
) a
LEFT JOIN connections c ON c.user_id = a.friend_id
LEFT JOIN words_en w ON c.word_id = w.id
GROUP BY 1;
元のクエリを使用して、そのクエリをテーブル(a)およびLEFT JOIN
として処理しました。 connections
でそれを テーブル。次に、LEFT JOIN
connections
words_en
を含むテーブル 目的の単語に到達するためのテーブル。これにより、接続や単語がない場合でも、元のクエリから戻るすべてのユーザーを取得できます。