質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

1回答

931閲覧

AWS Athena SUBSTRを使って住所を分割したい

fideo

総合スコア55

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2022/09/11 07:14

Amazon Athena において、"大阪府守口市○○○"という文字列から、"大阪府"という文字列だけ取り出したいです。

正規表現でLeftとMidの関数を使って、やろうと思いましたが、
Left関数利用できませんでしたので、SUBSTRの関数で行っています。

Left([住所],IIf(Mid([住所],4,1)=”県”,4,3))

下記の方法で指定した文字取得できましたが、
1~4まで指定ているので、下記のように出力されます。

SELECT *, SUBSTR(住所,1,4) FROM "address"."name" limit 10;

出力

大阪府守 東京都○ 栃木県○ 北海道○ 沖縄県○

実現したい結果
下記のように正規表現で住所を分割したいですが、
可能でしょうか。

大阪府 東京都 栃木県 北海道 沖縄県

参考ページ
AWS Athena データ抽出

ご教授いただけると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

AthenaのクエリステートメントはPrestoに基づいています。

DML クエリ、関数、および演算子 - Amazon Athena

Athena DML クエリステートメントは、Athena エンジンバージョン 2 の Presto 0.217 に基づいています。

Prestoには正規表現の関数があるので、試してみてはどうでしょうか。

Regular Expression Functions — Presto 0.276.1 Documentation

参考:Amazon Athenaで正規表現をサクッと使う

投稿2022/09/11 09:52

jhashimoto

総合スコア838

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問