Distinct XML values mysql I have a problem parsing XML input. I get a string of all Authors while I only want the distinct author or first value.

+----------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| doc_id   | xml_doc   
+----------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+                                                                                                                                                                                                                                                           |
| 1        | &lt;catalog&gt;&lt;book id="11"&gt;&lt;author&gt;Chuck Palahniuk&lt;/author&gt;&lt;title&gt;Fight Club&lt;/title&gt;&lt;/book&gt;&lt;book id="12"&gt;&lt;author&gt;Chuck Palahniuk&lt;/author&gt;&lt;title&gt;Survivor&lt;/title&gt;&lt;/book&gt;&lt;/catalog&gt;                                                                                        |
| 2        | &lt;catalog&gt;&lt;book id="21"&gt;&lt;author&gt;Bernard Werber&lt;/author&gt;&lt;title&gt;Les Thanatonautes&lt;/title&gt;&lt;/book&gt;&lt;/catalog&gt;                                                                                                                                                              |
| 3        | &lt;catalog&gt;&lt;book id="31"&gt;&lt;author&gt;Boris Vian&lt;/author&gt;&lt;title&gt;The Big Sleep&lt;/title&gt;&lt;/book&gt;&lt;book id="32"&gt;&lt;author&gt;Boris Vian&lt;/author&gt;&lt;title&gt;The Lady in the Lake&lt;/title&gt;&lt;/book&gt;&lt;book id="33"&gt;&lt;author&gt;Boris Vian&lt;/author&gt;&lt;title&gt;The World of Null-A&lt;/title&gt;&lt;/book&gt;&lt;/catalog&gt; |
+----------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+


SELECT ExtractValue(xml_doc, '//author[1]') AS author FROM catalogs ORDER BY author;


OUTPUT:

+----------------------------------+
|              author              |
+----------------------------------+
| Bernard Werber                   |
| Boris Vian Boris Vian Boris Vian |
| Chuck Palahniuk Chuck Palahniuk  |
+----------------------------------+


While I only would like distinct xml. Can this be achieved somehow? Or am I missing something?

My expected result would be

+----------------------------------+
|              author              |
+----------------------------------+
| Bernard Werber                   |
| Boris Vian                       |
| Chuck Palahniuk                  |
+----------------------------------+
To get the first author of the first book, you can use

select ExtractValue(xml_doc, '//book[1]//author[1]');


To get a real distinct list you would have to write a stored function that circles through all books and all authors.