PostgreSQL | PostgreSQL 基本構文 | 文字列や数値を入力する方法

文字列定数の入力方法

文字列はシングルクォート (') で囲んで記述する。

'文字列'

文字列の中にシングルクォートを入れるには、2 つのシングルクォートを連続して記述する。

devkuma=# select 'My father''s car';
    ?column?
-----------------
 My father's car
(1 行)

文字列の中で特別に扱う必要がある文字は、シングルクォートの中に文字として記述すればよい。\ などもそのまま文字として処理される。

文字列は、改行や空白を挟んで続けて記述すると 1 つの文字列として処理される。

devkuma=# select 'Hello'
devkuma-# 'World';
  ?column?
------------
 HelloWorld
(1 行)

文字列 Hello と文字列 World は改行を挟んで分かれているが、1 つの文字列として処理される。

エスケープ文字列

キーボードから入力できない文字を文字列に表示したい場合や、特殊な文字を入力したい場合、PostgreSQL ではエスケープ文字列を使用する。エスケープ文字列は、シングルクォートの前に E または e を付ける。

E'文字列'
e'文字列'

エスケープ文字列では、次のような特殊文字を入力できる。

\b      バックスペース文字
\f      改ページ
\n      改行
\r      キャリッジリターン
\t      タブ文字
\o      8 進数バイト値
\xh     16 進数バイト値
\uxxxx  16 ビットまたは 32 ビットの 16 進数 Unicode 文字値

エスケープ文字列で \ を文字として使用する場合は、\\ のように 2 つ続けて記述する。また、シングルクォートを文字として記述する場合は、通常の文字列と同じように '' と 2 つ続けて記述するほか、\' と記述することもできる。

次の例ではタブ文字を含めて表示している。

postgres=# select e'문자\t열';
  ?column?
------------
 문자    열
(1 行)

数値定数の入力方法

数値を書く場合は、そのまま数値を記述すればよい。

7
105
3.512

小数点を書く場合、前後の少なくとも一方に 1 つ以上の数字が必要である。

.552
8.

指数記号 e を使用して記述することもできる。その場合は、e の後に少なくとも 1 つの数字が必要である。

8e5
1.41e-3

数値の前に + または - を付けた場合、+ または - は数値の一部ではなく演算子として処理される。

-42
+602

ビット文字列定数の入力方法

ビット文字列定数を書く場合は、通常の文字列の前に B または b を付ける。文字列として使用できる文字は 0 または 1 だけである。

B'01 '
b'1001 '

2 進数の代わりに 16 進数表記で記述することもできる。通常の文字列の前に X または x を付ける。文字列として使用できる文字は 0 から 9、および A から F である。

X'3F '
x'A37E '

PostgreSQL で文字列や数値などの値を入力する方法について説明した。