Skip to content
Advertisement

MySQL – select distinct values from a column where values are separated by comma

To get the list of distinct values from table1 and column1 is as easy as doing this:

However, I inherited (unfortunately) a database where column1 contains values separated by a comma

I need to get the list of distinct values from column1, so it looks like this:

Any ideas?

Advertisement

Answer

A generic method uses a recursive query (available in MySQL 8.0 only):

Demo on DB Fiddle

Sample data:

| column1           |
| :---------------- |
| name1,name2       |
| name2,name3       |
| name4,name1,name3 |

Results:

| word  |
| :---- |
| name1 |
| name2 |
| name3 |
| name4 |
User contributions licensed under: CC BY-SA
8 People found this is helpful
Advertisement