Как найти символ в N-й позиции строки
Например,
create table tblvarchar
(
lngvarchar character varying(500)
)
И строка выборки
insert into tblvarchar (lngvarchar) values ('110010000001111101010011110000001101011000001')
- Как узнать
character(в этом случае (0или1)) в полеlngvarchar, используя позициюcharacter? - например,
characterв 15-й позицииlngvarcharявляется1
На PostgreSQL 9.2.4
2 ответа:
Вы можете сделать это (начальная позиция 15, пример длины 1):
SELECT SUBSTRING(lngvarchar,15,1) FROM tblvarchar;СКРИПКА SQL
Если ваши данные содержат только
0и1, Вы можете использовать битовые строки вместоcharacter varying(bit varyingв вашем случае).Вы можете использовать функцию
get_bit()для получения одного бита (но эта функция использует индексацию на основе нуля); такжеsubstring()работает и с битовыми строками (но даст вам результатыtext).