MySQL Group By Concatenate

I have two SQL tables. customer and tag joined on the customer.id=tag.attach_id

customer
+------+-------------+--------------+
|  id  |   name      |   email      |
|  9   |   Alan      |  alan@me.com |
+------+-------------+--------------+

tag
+------+-------------+--------------+
| id   | attach_id   | content      |
| 1    |   9         | alan-tag     |
| 2    |   9         | second-tag   |
+------+-------------+--------------+

I want to output this:

+-------+-----------------+-----------------------+
| name  |     email       | content               |
+-------+-----------------+-----------------------+
| alan  | alan@me.com     | alan-tag, second-tag  |
+-------+-----------------+-----------------------+

Here's my best attempt at SQL for this:

SELECT customer.name, customer.email, tag.content
FROM customer
INNER JOIN tag
ON customer.id=tag.attach_id
GROUP BY customer.id,tag.content;

Is this even possible without first processing the data in another language like PHP?

Yes you need to use GROUP_CONCAT as suggested by others on comment area, more specifically (exactly) your query is

SELECT `name`, email, GROUP_CONCAT(tag.content SEPARATOR ', ') as content
FROM
customer
INNER JOIN tag ON customer.id = tag.attach_id
GROUP BY customer.id

This Query will give you the exact result that you have osted on your post

You can use listagg if you are using sql

select c.name,email,listagg(content,',') within group (order by c.name) "content"
from customer c, tag t
where c.id = t.attach_id
group by c.name,email

Use this:

SELECT customer.name, customer.email, GROUP_CONCAT(tag.content SEPARATOR ', ') as content
FROM customer
INNER JOIN tag
ON customer.id=tag.attach_id
GROUP BY customer.id;