5

例えば、

create table tblvarchar 
(
lngvarchar character varying(500)
)

サンプル行は

insert into tblvarchar (lngvarchar) values ('110010000001111101010011110000001101011000001')
  • の位置を使用してフィールド内のcharacter(この場合 (0または1))を見つける方法は?lngvarcharcharacter
  • たとえば、 のcharacter15 番目の位置lngvarchar1

PostgreSQL 9.2.4 の場合

4

2 に答える 2

6

これを行うことができます (開始位置 15、長さ 1 の例):

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

SQL フィドル

于 2014-07-23T10:23:49.243 に答える
1

データに0とのみが含まれている場合は、 (の場合)の代わりにビット文字列1を使用することをお勧めします。character varyingbit varying

関数を使用しget_bit()て単一のビットを取得できます (ただし、その関数はゼロベースのインデックスを使用します)。substring()ビット文字列でも機能します(ただし、text結果が得られます)。

SQLフィドル

于 2014-07-23T11:33:41.743 に答える