Получение имени столбца, который имеет конкретное значение для конкретной строки
Структура таблицы и пример данных:
test=# \d+ test1
Table "public.test1"
Column | Type | Modifiers | Storage | Stats target | Description
--------+-----------------------+-----------+----------+--------------+-------------
a | character varying(10) | | extended | |
b | character varying(10) | | extended | |
c | character varying(10) | | extended | |
d | character varying(10) | | extended | |
e | character varying(10) | | extended | |
date | character varying(10) | | extended | |
test=# select * from test1 ;
a | b | c | d | e | date
---+---+---+---+---+------
3 | 1 | 3 | 2 | 3 | 124
3 | 3 | 2 | 2 | 1 | 125
1 | 2 | 2 | 1 | 3 | 126
1 | 2 | 3 | 2 | 3 | 127
1 | 1 | 2 | 2 | 3 | 123
(5 rows)
Желаемый результат: имя столбца (a,b,c,d или e), которое имеет значение "1" на любую конкретную дату (например, дата будет "123", тогда результат должен быть "a", "b"). Как я могу получить это в коде Голанга и postgresql.
Примечание. Это только примерные данные, есть n номеров столбцов a,b,c,....,a1,a2.... и так далее.