如何在字符串的第n个位置找到字符

时间:2014-07-23 10:20:03

标签: postgresql postgresql-9.2 string-function

例如,

create table tblvarchar 
(
lngvarchar character varying(500)
)

Sample Row是

insert into tblvarchar (lngvarchar) values ('110010000001111101010011110000001101011000001')
  • 如何使用character的位置在0字段中查找1(此案例(lngvarcharcharacter))?
  • 例如,character的第15位lngvarchar1

On PostgreSQL 9.2.4

2 个答案:

答案 0 :(得分:5)

你可以这样做(开始位置15,长度为1的例子):

SELECT SUBSTRING(lngvarchar,15,1) FROM tblvarchar;

SQL FIDDLE

答案 1 :(得分:1)

如果您的数据仅包含01,则可能需要使用bit strings代替character varyingbit varying)。

您可以使用get_bit()函数获取单个位(但该函数使用基于零的索引);同样substring()也适用于位字符串(但会给你text个结果)。

SQLFiddle