I want to return a row for each cluster of data that has a unique amount, operation, months, and fee for a given id.
Table is as follows:

I can almost get what I want with
SELECT amount, operation, months, fee, plan_id
FROM promo_discounts
WHERE promo_id = 1
GROUP BY amount, operation, months, fee
Which will get:

But notice it only returns one plan_id when I want it to return something like 1, 2, 3
Is this possible?
You could use
GROUP_CONCATBeware though, that the default maximum length is 1024, so if you’re doing this with a large table, you could have truncated values…