I have a table that has patient information (name, dob, ssn, etc.) and a table that has lists of medications that they take. (aspirin, claritin, etc.) The tables are related by a unique id from the patient table. So, it’s easy enough to pull all of Mary Smith’s medications.
But, what I need to do is to show a paginated list of patients that shows their name, other stuff from the patient table and has a column with a line-separated list of their medications. Roughly, this:

If I do a simple left join, I get 3 repeated rows of Mary Smith with one medication per row.
The patient table can have thousands of records, so I don’t want to do a query to get all the patients and then loop through and get their meds. And, because it’s paginated based on patient, I can’t figure out how to get the correct number of patients for the page, along with all their medications.
(The patients/medications thing is just a rough example of the data; so please don’t suggest restructuring how the data is stored.)
GROUP_CONCAT to the rescue!