見出し画像

【第58回】 SQL を使って誕生日から年齢を計算する方法

企業が保有しているデータにおいては、「顧客の生年月日」のデータは持っていても、「年齢」のデータを持っていないケースがあるかと思います。

この「年齢」を使った配信条件として、例えば「 20 歳~ 24 歳の人にメールを送信したい」という要望などがあると思います。そこで、事前に配信マスタに「年齢」のデータを持っておくことで、サクッとセグメントができたりしますので、これを予め用意しておくと便利です。

そこで、今回の記事は Salesforce Marketing Cloud において「生年月日」のデータから「年齢」を算出するクエリの紹介です。以下を SELECT 句内で使用できます。

DATEDIFF(year, birthday, GETDATE())
    - CASE
        WHEN RIGHT(CONVERT(varchar, GETDATE(), 112), 4)
           < RIGHT(CONVERT(varchar, birthday, 112), 4)
        THEN 1
        ELSE 0
      END AS [age]

こちらのクエリでは、FROM 句で指定した操作対象のデータエクステンションに「birthday」という名前の項目名があることを想定しています。必要に応じて、ご自身の「生年月日」の項目名を入れ替えてください。

※ Salesforce Marketing Cloud は SQL Server に準拠しています。

今回は以上です。


次の記事はこちら

前回の記事はこちら

私の note のトップページはこちら