Я пытаюсь выбрать уникальные значения из неоднородной таблицы и показать только уникальные.
SELECT DISTINCT "year" as sorter, year(data) as year, NULL as location
FROM site
WHERE tipo='projects'
UNION
SELECT DISTINCT "loc" as sorter, NULL as year, spare_1 as location
FROM site
WHERE tipo='projects'
ORDER BY sorter ASC, year DESC, localition ASC
Это вернет
+--------+------+----------+
| SORTER | YEAR | LOCATION |
+--------+------+----------+
| year | 2010 | NULL |
+--------------------------+
| year | 2009 | NULL |
+--------------------------+
| year | 2008 | NULL |
+--------------------------+
| loc | NULL | London |
+--------------------------+
| loc | NULL | Paris |
+--------------------------+
| loc | NULL | NYC |
+--------------------------+
Мне не очень нравится двойной выбор. Есть ли более эффективный способ сделать это?
Заранее спасибо.