помогите пожалуйста составить запрос)
есть функция ts_debug - возвращает подробности по парсингу поля через tsvector
пример:
SELECT description, token FROM ts_debug('16 парковая');
description | token
-------------------+----------
Unsigned integer | 16
Space symbols |
Word, all letters | парковая
из этого интересует наличие токена с типом "Unsigned integer"
идем дальше. имеется таблица osm_buildings в которой есть столбец street в котором содержатся названия улиц. можем взять оттуда какое либо значение, перевести в tsvector и назначить вес "А"
например:
select setweight(to_tsvector(street), 'A')
from osm_buildings
where osm_id = 29702868;
setweight
-----------------------------
'16':1A 'парков':3A 'ул':4A
А теперь суть вопроса:
Как грамотнее составить запрос, что бы setweight отработала по условию, заглянув сначала в функцию ts_debug по данному полю и если там присутствует какой нибудь токен с типом "Unsigned integer", то присвоила бы всему полю вес А, если отсутствует, то B?