メインコンテンツへスキップ

bech32Decode

導入バージョン: v25.6.0 bech32 または bech32m アルゴリズムで生成された Bech32 アドレス文字列をデコードします。
エンコード関数とは異なり、bech32Decode はパディングされた FixedString を自動的に処理します。
構文
bech32Decode(address[, 'raw'])
引数
  • address — デコードする Bech32 文字列。String または FixedString
  • mode — 省略可。先頭バイトを witness version として取り除かずにデコードするには 'raw' を指定します。非 SegWit アドレス (例: Cosmos SDK) の場合に使用します。String
戻り値 文字列のエンコードに使用された (hrp, data) で構成されるタプルを返します。データはバイナリ形式です。Tuple(String, String) アドレスをデコード
Query
SELECT tup.1 AS hrp, hex(tup.2) AS data FROM (SELECT bech32Decode('bc1w508d6qejxtdg4y5r3zarvary0c5xw7kj7gz7z') AS tup)
Response
bc   751E76E8199196D454941C45D1B3A323F1433BD6
テストネットアドレス
Query
SELECT tup.1 AS hrp, hex(tup.2) AS data FROM (SELECT bech32Decode('tb1w508d6qejxtdg4y5r3zarvary0c5xw7kzp034v') AS tup)
Response
tb   751E76E8199196D454941C45D1B3A323F1433BD6

bech32Encode

導入バージョン: v25.6.0 Bech32 または Bech32m アルゴリズムを使用して、human-readable part (HRP) とバイナリデータ文字列をエンコードします。
FixedString データ型を使用する場合、値が行を完全に埋めないと、null 文字で埋められます。 bech32Encode 関数は hrp 引数についてはこれを自動的に処理しますが、data 引数については値が埋められていてはなりません。 このため、すべての値の長さが同じであり、かつ FixedString カラムもその長さに設定されていることを確実に保証できる場合を除き、 データ値に FixedString データ型を使用することは推奨されません。
構文
bech32Encode(hrp, data[, witver | 'bech32' | 'bech32m'])
引数
  • hrp — コードの “human-readable part” を指定する、1 - 83 文字の小文字からなる String。通常は ‘bc’ または ‘tb’ です。String または FixedString
  • data — エンコードするバイナリデータの String。String または FixedString
  • witver_or_variant — 任意。UInt* の witness version (デフォルトは 1、Bech32 では 0、Bech32m では 1 以上) または、String のエンコード variant ('bech32' (BIP173) または 'bech32m' (BIP350) ) のいずれかを指定します。文字列の variant を使用する場合、witness version バイトは先頭に追加されません。これは Cosmos SDK などの非 SegWit アドレスで必要になります。UInt* または String
戻り値 human-readable part、常に ‘1’ である区切り文字、および data part で構成される Bech32 アドレス文字列を返します。文字列の長さが 90 文字を超えることはありません。アルゴリズムが入力から有効なアドレスを生成できない場合は、空文字列を返します。String デフォルトの Bech32m
Query
-- witness versionが指定されない場合、デフォルトは1(更新されたBech32mアルゴリズム)が使用されます。
SELECT bech32Encode('bc', unhex('751e76e8199196d454941c45d1b3a323f1433bd6'))
Response
bc1w508d6qejxtdg4y5r3zarvary0c5xw7k8zcwmq
Bech32アルゴリズム
Query
-- witness versionが0の場合、異なるアドレス文字列が生成されます。
SELECT bech32Encode('bc', unhex('751e76e8199196d454941c45d1b3a323f1433bd6'), 0)
Response
bc1w508d6qejxtdg4y5r3zarvary0c5xw7kj7gz7z
カスタムHRP
Query
-- 'bc'(メインネット)と 'tb'(テストネット)は SegWit アドレス形式で許可される唯一の hrp 値だが、
-- Bech32 は上記の要件を満たす任意の hrp を使用できる。
SELECT bech32Encode('abcdefg', unhex('751e76e8199196d454941c45d1b3a323f1433bd6'), 10)
Response
abcdefg1w508d6qejxtdg4y5r3zarvary0c5xw7k9rp8r4
Cosmos SDK アドレス (BIP173、witness versionなし)
Query
-- 'bech32' バリアントを使用すると、witness version バイトなしで生データをエンコードします。
-- Cosmos SDK、Injective、Osmosis、その他の非SegWit チェーンと互換性があります。
SELECT bech32Encode('inj', unhex('751e76e8199196d454941c45d1b3a323f1433bd6'), 'bech32')
Response
inj1w508d6qejxtdg4y5r3zarvary0c5xw7kgj5aqs

bin

導入バージョン: v21.8.0 異なる型に対して、以下のロジックに従った引数の 2 進表現を含む文字列を返します。
説明
(U)Int*最上位ビットから最下位ビットに向かって bin の各桁を出力します (ビッグエンディアン、つまり「人が読みやすい」順序) 。最上位の非ゼロバイトから開始し (先頭のゼロバイトは省略されます) 、先頭の桁がゼロでも各バイトは常に 8 桁で出力されます。
Date and DateTime対応する整数としてフォーマットされます (Date は epoch からの日数、DateTime は Unix timestamp の値) 。
String and FixedStringすべてのバイトはそのまま 8 桁の 2 進数としてエンコードされます。ゼロバイトは省略されません。
Float* and Decimalメモリ上の表現としてエンコードされます。リトルエンディアン アーキテクチャをサポートしているため、リトルエンディアン でエンコードされます。先頭および末尾のゼロバイトは省略されません。
UUIDビッグエンディアン 順の文字列としてエンコードされます。
構文
bin(arg)
引数 戻り値 引数のバイナリ表現を表す文字列を返します。String 単純な整数
Query
SELECT bin(14)
Response
┌─bin(14)──┐
│ 00001110 │
└──────────┘
Float32数
Query
SELECT bin(toFloat32(number)) AS bin_presentation FROM numbers(15, 2)
Response
┌─bin_presentation─────────────────┐
│ 00000000000000000111000001000001 │
│ 00000000000000001000000001000001 │
└──────────────────────────────────┘
Float64型の数値
Query
SELECT bin(toFloat64(number)) AS bin_presentation FROM numbers(15, 2)
Response
┌─bin_presentation─────────────────────────────────────────────────┐
│ 0000000000000000000000000000000000000000000000000010111001000000 │
│ 0000000000000000000000000000000000000000000000000011000001000000 │
└──────────────────────────────────────────────────────────────────┘
UUIDの変換
Query
SELECT bin(toUUID('61f0c404-5cb3-11e7-907b-a6006ad3dba0')) AS bin_uuid
Response
┌─bin_uuid─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ 01100001111100001100010000000100010111001011001100010001111001111001000001111011101001100000000001101010110100111101101110100000 │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

bitPositionsToArray

導入バージョン: v21.7.0 この関数は、符号なし整数のバイナリ表現において、1 であるビットの位置を昇順で返します。 符号付きの入力整数は、まず符号なし整数にキャストされます。 構文
bitPositionsToArray(arg)
引数 戻り値 入力のバイナリ表現において、1 になっているビットの位置を昇順に並べた配列を返します。Array(UInt64) 1 ビットのみが立っている場合
Query
SELECT bitPositionsToArray(toInt8(1)) AS bit_positions
Response
┌─bit_positions─┐
│ [0]           │
└───────────────┘
すべてのビットが立っている
Query
SELECT bitPositionsToArray(toInt8(-1)) AS bit_positions
Response
┌─bit_positions─────────────┐
│ [0, 1, 2, 3, 4, 5, 6, 7]  │
└───────────────────────────┘

bitmaskToArray

導入バージョン: v1.1.0 この関数は、整数を 2 の累乗の和に分解します。 2 の累乗は、昇順に並んだ配列として返されます。 構文
bitmaskToArray(num)
引数 戻り値 入力された数の合計となる、2 の累乗を昇順に並べた配列を返します。Array(UInt64) 基本例
Query
SELECT bitmaskToArray(50) AS powers_of_two
Response
┌─powers_of_two───┐
│ [2, 16, 32]     │
└─────────────────┘
2の累乗が1つだけ
Query
SELECT bitmaskToArray(8) AS powers_of_two
Response
┌─powers_of_two─┐
│ [8]           │
└───────────────┘

bitmaskToList

導入バージョン: v1.1.0 bitmaskToArray と同様に、2 の累乗をカンマ区切りの文字列として返します。 構文
bitmaskToList(num)
引数 戻り値 カンマ区切りの 2 の累乗を含む文字列を返します。String 基本例
Query
SELECT bitmaskToList(50) AS powers_list
Response
┌─powers_list───┐
│ 2, 16, 32     │
└───────────────┘

char

導入バージョン: v20.1.0 渡された引数の数と同じ長さの文字列を返します。各バイトは 対応する引数の値になります。数値型の引数を複数受け付けます。 引数の値が UInt8 データ型の範囲外である場合、その値は 丸めやオーバーフローが発生する可能性のある形で UInt8 に変換されます。 構文
char(num1[, num2[, ...]])
引数 戻り値 指定したバイト列からなる文字列を返します。String 基本例
Query
SELECT char(104.1, 101, 108.9, 108.9, 111) AS hello;
Response
┌─hello─┐
│ hello │
└───────┘
任意のエンコーディングの生成
Query
-- 対応するバイトを渡すことで、任意のエンコーディングの文字列を構築できます。
-- 例えばUTF-8
SELECT char(0xD0, 0xBF, 0xD1, 0x80, 0xD0, 0xB8, 0xD0, 0xB2, 0xD0, 0xB5, 0xD1, 0x82) AS hello;
Response
┌─hello──┐
│ привет │
└────────┘

hex

導入バージョン: v1.1.0 引数の16進表現を含む文字列を返します。型ごとの処理ロジックは次のとおりです。
TypeDescription
(U)Int*16進数の桁 (「ニブル」) を、上位桁から下位桁へ (ビッグエンディアン、つまり「human-readable」な順序で) 出力します。最上位の非ゼロバイトから開始し (先頭のゼロバイトは省略されます) 、先頭の桁がゼロであっても各バイトは常に2桁とも出力されます。
Date and DateTime対応する整数としてフォーマットされます (Date は epoch からの日数、DateTime は Unix timestamp の値) 。
String and FixedStringすべてのバイトはそのまま2桁の16進数としてエンコードされます。ゼロバイトも省略されません。
Float* and Decimalメモリ上の表現でエンコードされます。ClickHouse は内部的に常にリトルエンディアンで値を表現するため、それに従ってエンコードされます。先頭や末尾のゼロバイトも省略されません。
UUIDビッグエンディアン順の文字列としてエンコードされます。
この関数では大文字の A-F を使用し、プレフィックス (0x など) や接尾辞 (h など) は使用しません。 構文
hex(arg)
引数 戻り値 引数の16進表現を表す文字列を返します。String 単純な整数値
Query
SELECT hex(1)
Response
01
Float32型の数値
Query
SELECT hex(toFloat32(number)) AS hex_presentation FROM numbers(15, 2)
Response
┌─hex_presentation─┐
│ 00007041         │
│ 00008041         │
└──────────────────┘
Float64の数値
Query
SELECT hex(toFloat64(number)) AS hex_presentation FROM numbers(15, 2)
Response
┌─hex_presentation─┐
│ 0000000000002E40 │
│ 0000000000003040 │
└──────────────────┘
UUIDの変換
Query
SELECT lower(hex(toUUID('61f0c404-5cb3-11e7-907b-a6006ad3dba0'))) AS uuid_hex
Response
┌─uuid_hex─────────────────────────┐
│ 61f0c4045cb311e7907ba6006ad3dba0 │
└──────────────────────────────────┘

hilbertDecode

導入バージョン: v24.6.0 ヒルベルト曲線のインデックスをデコードし、多次元空間の座標を表す符号なし整数のタプルに戻します。 hilbertEncode 関数と同様に、この関数には 2 つの動作モードがあります。
  • シンプル
  • 拡張
シンプルモード 引数として最大 2 つの符号なし整数を受け取り、UInt64 コードを生成します。 拡張モード 最初の引数として範囲マスク (タプル) を受け取り、そのほかの引数として最大 2 つの符号なし整数を 受け取ります。マスク内の各数値は、対応する引数を左にシフトするビット数を指定し、 その範囲内で引数を実質的にスケーリングします。 範囲の拡張は、範囲 (またはカーディナリティ) が大きく異なる引数に対して、 似た分布が必要な場合に役立ちます。たとえば、‘IP Address’ (0...FFFFFFFF) と ‘Country code’ (0...FF) のような場合です。encode 関数と同様に、指定できる 数値は最大 8 個までです。 構文
hilbertDecode(tuple_size, code)
引数 戻り値 指定したサイズのタプルを返します。Tuple(UInt64) シンプルモード
Query
SELECT hilbertDecode(2, 31)
Response
["3", "4"]
引数が1つの場合
Query
-- 引数が1つの場合、Hilbertコードは常にその引数自体(タプルとして)になります。
SELECT hilbertDecode(1, 1)
Response
["1"]
拡張モード
Query
-- ビットシフトを指定するタプルを持つ単一の引数は、それに応じて右シフトされます。
SELECT hilbertDecode(tuple(2), 32768)
Response
["128"]
カラムでの使用
Query
-- まずテーブルを作成してデータを挿入する
CREATE TABLE hilbert_numbers(
    n1 UInt32,
    n2 UInt32
)
ENGINE=MergeTree()
ORDER BY n1 SETTINGS index_granularity_bytes = '10Mi';
insert into hilbert_numbers (*) values(1,2);

-- 定数の代わりにカラム名を関数の引数として使用する
SELECT untuple(hilbertDecode(2, hilbertEncode(n1, n2))) FROM hilbert_numbers;
Response
1    2

hilbertEncode

導入バージョン: v24.6.0 符号なし整数のリストに対する Hilbert Curve のコードを計算します。 この関数には、2 つの動作モードがあります。
  • シンプル
  • 拡張
シンプルモード 最大 2 つの符号なし整数を引数として受け取り、UInt64 のコードを生成します。 拡張モード 最初の引数として範囲マスク (Tuple) を受け取り、 それ以外の引数として最大 2 つの 符号なし整数 を受け取ります。 マスク内の各数値は、対応する 引数を左にシフトするビット数を設定し、その結果、引数はその範囲内で実質的にスケーリングされます。 構文
-- シンプルモード
hilbertEncode(args)

-- 拡張モード
hilbertEncode(range_mask, args)
引数
  • args — 最大2つの UInt 型の値、または UInt 型のカラム。UInt8/16/32/64
  • range_mask — 拡張モードでは、最大2つの UInt 型の値、または UInt 型のカラム。UInt8/16/32/64
戻り値 UInt64 型のコードを返します。UInt64 シンプルモード
Query
SELECT hilbertEncode(3, 4)
Response
31
拡張モード
Query
-- 範囲の拡張は、範囲(またはカーディナリティ)が大きく異なる引数に対して
-- 同様の分布が必要な場合に有効です。
-- 例: 'IP Address' (0...FFFFFFFF) と 'Country code' (0...FF)。
-- 注意: タプルのサイズは他の引数の数と等しくなければなりません。
SELECT hilbertEncode((10, 6), 1024, 16)
Response
4031541586602
引数が1つの場合
Query
-- タプルなしの単一引数の場合、次元マッピングが不要なため、関数は引数自体を
-- Hilbert 索引としてそのまま返します。
SELECT hilbertEncode(1)
Response
1
拡張 (単一引数)
Query
-- 単一の引数がビットシフトを指定するタプルとともに渡された場合、関数は
-- 指定されたビット数だけ引数を左にシフトします。
SELECT hilbertEncode(tuple(2), 128)
Response
512
カラムでの使用
Query
-- まずテーブルを作成してデータを挿入する
CREATE TABLE hilbert_numbers(
    n1 UInt32,
    n2 UInt32
)
ENGINE=MergeTree()
ORDER BY n1;
insert into hilbert_numbers (*) values(1, 2);

-- 関数の引数として定数の代わりにカラム名を使用する
SELECT hilbertEncode(n1, n2) FROM hilbert_numbers;
Response
13

mortonDecode

導入バージョン: v24.6.0 Morton エンコーディング (ZCurve) を、対応する符号なし整数のタプルにデコードします。 mortonEncode 関数と同様に、この関数には 2 つの動作モードがあります。
  • シンプル
  • 拡張
シンプルモード 第 1 引数に結果のタプルサイズを、第 2 引数にコードを受け取ります。 拡張モード 第 1 引数に範囲マスク (タプル) を、第 2 引数にコードを受け取ります。 マスク内の各数値は、範囲の縮小率を指定します。
  • 1 - 縮小なし
  • 2 - 2 倍に縮小
  • 3 - 3 倍に縮小 ⋮
  • 最大 8 倍まで縮小。
範囲の拡張は、範囲 (またはカーディナリティ) が大きく異なる 引数どうしで似た分布を得たい場合に有効です。たとえば、‘IP Address’ (0...FFFFFFFF) と ‘Country code’ (0...FF) のような場合です。encode 関数と同様に、指定できる数値は 最大 8 個までに制限されています。 構文
-- シンプルモード
mortonDecode(tuple_size, code)

-- 拡張モード
mortonDecode(range_mask, code)
引数
  • tuple_size — 8 以下の整数値。UInt8/16/32/64
  • range_mask — 拡張モードでは、各引数に対するマスクです。マスクは符号なし整数のタプルです。マスク内の各数値は、範囲の縮小量を設定します。Tuple(UInt8/16/32/64)
  • code — UInt64 のコード。UInt64
戻り値 指定したサイズのタプルを返します。Tuple(UInt64) シンプルモード
Query
SELECT mortonDecode(3, 53)
Response
["1", "2", "3"]
引数が1つの場合
Query
SELECT mortonDecode(1, 1)
Response
["1"]
拡張モードで 1 つの引数を縮小する
Query
SELECT mortonDecode(tuple(2), 32768)
Response
["128"]
カラムでの使用
Query
-- まずテーブルを作成してデータを挿入する
CREATE TABLE morton_numbers(
    n1 UInt32,
    n2 UInt32,
    n3 UInt16,
    n4 UInt16,
    n5 UInt8,
    n6 UInt8,
    n7 UInt8,
    n8 UInt8
)
ENGINE=MergeTree()
ORDER BY n1;
INSERT INTO morton_numbers (*) values(1, 2, 3, 4, 5, 6, 7, 8);

-- 関数の引数として定数の代わりにカラム名を使用する
SELECT untuple(mortonDecode(8, mortonEncode(n1, n2, n3, n4, n5, n6, n7, n8))) FROM morton_numbers;
Response
1 2 3 4 5 6 7 8

mortonEncode

導入バージョン: v24.6.0 符号なし整数のリストの Morton 符号化 (ZCurve) を計算します。 この関数には 2 つの動作モードがあります。
  • シンプル
  • 拡張*
シンプルモード 最大 8 個の符号なし整数を引数として受け取り、UInt64 のコードを生成します。 拡張モード 最初の引数として範囲マスク (Tuple) を受け取り、 そのほかの引数として最大 8 個の 符号なし整数 を受け取ります。 マスク内の各数値は、範囲をどの程度拡張するかを指定します。
  • 1 - 拡張なし
  • 2 - 2 倍に拡張
  • 3 - 3 倍に拡張 ⋮
  • 最大 8 倍まで拡張。
構文
-- シンプルモード
mortonEncode(args)

-- 拡張モード
mortonEncode(range_mask, args)
引数
  • args — 前述の型の符号なし整数、またはその型のカラムを最大 8 個まで指定できます。 UInt8/16/32/64
  • range_mask — 拡張モードで使用する、各引数に対応するマスクです。マスクは 1 - 8 の符号なし整数からなるタプルです。マスク内の各数値は、範囲の縮小量を設定します。 Tuple(UInt8/16/32/64)
戻り値 UInt64 のコードを返します。 UInt64 シンプルモード
Query
SELECT mortonEncode(1, 2, 3)
Response
53
拡張モード
Query
-- 範囲の拡張は、範囲(またはカーディナリティ)が大きく異なる引数に対して
-- 同様の分布が必要な場合に有効です
-- 例: 'IP Address' (0...FFFFFFFF) と 'Country code' (0...FF)
-- 注意: Tuple のサイズは他の引数の数と等しくなければなりません
SELECT mortonEncode((1,2), 1024, 16)
Response
1572864
引数が1つの場合
Query
-- 引数が1つの場合、Mortonエンコーディングの結果は常に引数そのものになる
SELECT mortonEncode(1)
Response
1
拡張時の単一引数
Query
SELECT mortonEncode(tuple(2), 128)
Response
32768
カラムでの使用
Query
-- まずテーブルを作成し、データを挿入する
CREATE TABLE morton_numbers(
    n1 UInt32,
    n2 UInt32,
    n3 UInt16,
    n4 UInt16,
    n5 UInt8,
    n6 UInt8,
    n7 UInt8,
    n8 UInt8
)
ENGINE=MergeTree()
ORDER BY n1;
INSERT INTO morton_numbers (*) values(1, 2, 3, 4, 5, 6, 7, 8);

-- 関数の引数として定数の代わりにカラム名を使用する
SELECT mortonEncode(n1, n2, n3, n4, n5, n6, n7, n8) FROM morton_numbers;
Response
2155374165

sqidDecode

導入バージョン: v24.1.0 sqid を数値の配列にデコードします。 構文
sqidDecode(sqid)
引数
  • sqid — デコードする sqidString
戻り値 sqid から数値の配列を返します。Array(UInt64) 使用例
Query
SELECT sqidDecode('gXHfJ1C6dN');
Response
┌─sqidDecode('gXHfJ1C6dN')─────┐
│ [1, 2, 3, 4, 5]              │
└──────────────────────────────┘

sqidEncode

導入バージョン: v24.1.0 数値を、YouTube のような ID 文字列である sqid に変換します。 構文
sqidEncode(n1[, n2, ...])
別名: sqid 引数 戻り値 ハッシュ ID の String を返します 使用例
Query
SELECT sqidEncode(1, 2, 3, 4, 5);
Response
┌─sqidEncode(1, 2, 3, 4, 5)─┐
│ gXHfJ1C6dN                │
└───────────────────────────┘

unbin

導入バージョン: v21.8.0 (引数内の) 2 進数の各桁の組を数値として解釈し、その数値が表すバイトに変換します。この関数は bin とは逆の操作を行います。 数値引数に対しては、unbin()bin() の逆変換を返しません。結果を数値に変換したい場合は、reverse 関数と reinterpretAs<Type> 関数を使用できます。
clickhouse-client 内から unbin を呼び出した場合、バイナリ文字列は UTF-8 として表示されます。
01 の 2 進数のみをサポートします。2 進数の桁数は 8 の倍数である必要はありません。引数文字列に 2 進数以外の文字が含まれている場合、 結果は未定義です (例外はスローされません) 。 構文
unbin(arg)
引数
  • arg — 0 と 1 からなる任意の長さの文字列。String
戻り値 バイナリ文字列 (BLOB) を返します。String 基本的な使い方
Query
SELECT UNBIN('001100000011000100110010'), UNBIN('0100110101111001010100110101000101001100')
Response
┌─unbin('001100000011000100110010')─┬─unbin('0100110101111001010100110101000101001100')─┐
│ 012                               │ MySQL                                             │
└───────────────────────────────────┴───────────────────────────────────────────────────┘
数値に変換
Query
SELECT reinterpretAsUInt64(reverse(unbin('1110'))) AS num
Response
┌─num─┐
│  14 │
└─────┘

unhex

導入バージョン: v1.1.0 hex とは逆の操作を行います。引数内の 16 進数の各 2 桁を 1 つの数値として解釈し、 その数値が表すバイトに変換します。戻り値はバイナリ文字列 (BLOB) です。 結果を数値に変換したい場合は、reverse 関数と reinterpretAs<Type> 関数を使用できます。
clickhouse-client は文字列を UTF-8 として解釈します。 そのため、hex が返す値が想定外の形で表示されることがあります。
大文字と小文字の A-F の両方をサポートしています。 16 進数の桁数は偶数である必要はありません。 奇数の場合、最後の 1 桁は 00-0F バイトの下位 4 ビットとして解釈されます。 引数の文字列に 16 進数以外の文字が含まれている場合、実装依存の結果が返されます (例外はスローされません) 。 数値引数に対しては、hex(N) の逆変換は unhex() では行われません。 構文
unhex(arg)
引数 戻り値 バイナリ文字列 (BLOB) を返します。String 基本的な使い方
Query
SELECT unhex('303132'), UNHEX('4D7953514C')
Response
┌─unhex('303132')─┬─unhex('4D7953514C')─┐
│ 012             │ MySQL               │
└─────────────────┴─────────────────────┘
数値へ変換
Query
SELECT reinterpretAsUInt64(reverse(unhex('FFF'))) AS num
Response
┌──num─┐
│ 4095 │
└──────┘
最終更新日 2026年6月10日