アクセス解析担当者のBigQuery日記

普段はアクセス解析やウェブ広告の運用をしています。主にBigQueryについて、記録していきます。

BigQueryでひらがなをカタカナに変換するSQLUDFを作成する

概要

BigQuery上でひらがなをカタカナに変換するSQLUDFを作成する。
処理の流れは、以下の記事と同じである。
sem-aa-bq.hatenablog.com

アウトプットのイメージ

CREATE TEMP FUNCTION hirakata(x STRING) AS (
udf
);
SELECT
  --コメント部分が実行結果
  hirakata("あいうeoエオ") --アイウeoエオ

今回のキーワード

  1. UDF
  2. TO_CODE_POINTS 関数
  3. ARRAYの処理

クエリ

  CREATE TEMP FUNCTION hirakata(x STRING) AS ( CODE_POINTS_TO_STRING( ARRAY(
      SELECT
        IF(x BETWEEN 12353
          AND 12438, x + 96, x)
      FROM
        UNNEST( TO_CODE_POINTS(x)) AS x ) ));
SELECT
  hirakata("あいうeoエオ"), --アイウeoエオ