MySQL JOIN / GROUP_CONCAT second table?

前端 未结 2 1567
时光取名叫无心
时光取名叫无心 2020-12-17 04:56

So I have this query that works perfectly:

SELECT users.*,
GROUP_CONCAT(categories.category_name) AS categories
FROM users
LEFT OUTER JOIN user_categories ON         


        
2条回答
  •  半阙折子戏
    2020-12-17 05:24

    It does weird things, becaue there is a cross product of certain rows. You can use the DISTINCT keyword to get only unique phone numbers:

    GROUP_CONCAT(DISTINCT phones.phone_number) AS phone_numbers,
    

    Check the documentation. Alternatively, you can get the phone numbers in another query where you would select only the phone numbers with a condition like WHERE phones.user_id IN (x, x, x, ...) (x are IDs returned from the first query).

提交回复
热议问题