SQL

DatabricksでUDF(ユーザー定義関数)を使う方法

この記事は約2分で読めます。

 

DatabricksのsparksqlでUDFを使いたいな~と思ったのですが、少し手間取ったので保存用にまとめておきます。

 

UDF(ユーザー定義関数)を定義する

 

例えばdatabricksで中間テーブルとかでよく使うテーブルの期間を関数で共通化

したい場合などは以下のように記述します。

CREATE OR REPLACE FUNCTION start_date()
   RETURNS STRING
 COMMENT '開始日を関数で共通化する'
   LANGUAGE SQL
   RETURN 20220801;

CREATE OR REPLACE FUNCTION end_date()
   RETURNS STRING
   COMMENT '終了日を関数で共通化する'
   LANGUAGE SQL
   RETURN 20220831;

 

UDFをクエリ内で使用する

 

SELECT
  *
FROM
  table
WHERE
  BETWEEN start_date() AND end_date()

 

 

参照:https://qiita.com/taka_yayoi/items/80862e2f8d01e4306a79

How Databricks’ New SQL UDF Extends Spark SQL W/O the Usual Limitations
Learn more about Databricks’s new SQL UDF and how it makes UDFs within Spark SQL more performant, secure and versatile. Also includes tutorials on the use of sc...

 

関連記事:Databricksで中央値と四分位数を集計する

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

タイトルとURLをコピーしました