メインコンテンツまでスキップ
翻訳ページ

このページは AI の支援を受けて英語から翻訳されています。内容が異なる場合は英語版が正となります。

SPLIT_PART

ソース文字列を区切り文字で分割し、指定した部分(1 から数える)を返します。

関連項目:
[SELECT]


構文​

SELECT SPLIT_PART(source, sep, part) FROM <multipartIdentifier>;

引数​

source
分割を実行する文字列リテラルまたは文字列型の列です。

sep
区切り文字として使用する 1 文字以上の文字です。

sep が複数の文字で構成されている場合は、各文字が区切り文字として扱われます。

区切り文字としてサポートされているのは ASCII(1 バイト)の記号のみです。

part
返す要素の、分割後の文字列における位置(1 から数える)です。負の値を指定すると、最後の要素から逆方向に数えます。

戻り値​

文字列を返します。


例​

スラッシュで区切られた文字列から要素を抽出する​

SELECT name,
split_part(id, '/', 3) as subscription,
split_part(id, '/', 5) as resource_group,
json_extract(properties, '$.hardwareProfile.vmSize') as vm_size
FROM azure.compute.virtual_machines
WHERE resource_group_name = 'stackql-ops-cicd-dev-01'
AND subscription_id = '273769f6-545f-45b2-8ab8-2f14ec5768dc';

URL から最後の要素を抽出する​

SELECT
name,
SPLIT_PART(network, '/', -1) as network,
SPLIT_PART(region, '/', -1) as region
FROM google.compute.vpn_gateways WHERE project = 'stackql-demo';

詳細については、https://github.com/nalgeon/sqlean/blob/main/docs/text.md を参照してください。