Du kan använda ett case
uttryck:
select
id,
case
when bike = true then 'bike'
when car = true then 'car'
when bus = true then 'bus'
when metro = true then 'metro'
end mode
from survey
Detta förutsätter att för varje rad är endast en kolumn sann. Om inte kommer endast värdet av den första matchande kolumnen att returneras.