コンテンツにスキップ

数値列同士の演算

計算を SQL に組み立てて、つなぎ先のデータベースに計算させます。 売上から原価を引く、単価 × 数量で金額を出すといった計算を、分析プロジェクトに取り込む前に済ませられます。自由な式は書けず、用意された演算子を組み合わせる形です。

分析プロジェクトとの違い

見るところSQLビルダー分析プロジェクト
演算式の組み立て方法簡易設定 / 一括 の 2 つ簡易設定 / 簡易一括設定 / 式を記述 の 3 つ
一括で使える演算子+ と × だけ同じ 2 つ
簡易設定で使える演算子+ - × ÷ 商 余り 累乗同じ
式を自分で書くできないできる

自由な式を書きたいときは SQLビルダーではできません。 データソース化するで nehan に取り込んでから、分析プロジェクトの数値列同士の演算を使ってください。

入出力

ポート内容
入力データデータ
出力データデータ

設定項目

フォームの見出しの並び — 「結果の挿入先を設定」 → 「演算式の組み立て方法を設定」 → 「演算式の設定」 → 「式の最初の項を設定」 → 「一括で処理する列と演算子を選択」。条件によって出ない見出しもあります。

結果の挿入先を設定
新規列に挿入(既定)か既存列に上書き。
新規列名を入力
「新規列に挿入」のときに出ます。計算結果を入れる列の名前。
列を選択必須
「既存列に上書き」のときに出ます。計算結果の入り先で、計算に使う列ではありません。数値の列だけ選べます。
演算式の組み立て方法を設定
簡易設定(既定)か一括。
固定数値を演算する
簡易設定のときに出ます。on にすると、その項に列ではなく決まった数値を使います。
列を選択(式の最初の項)必須
簡易設定で「固定数値を演算する」が off のときに出ます。数値の列だけ選べます。
数値を入力
簡易設定で「固定数値を演算する」が on のときに出ます。
演算子と項
簡易設定のときに出ます。2 つ目以降の項を並べる場所です。1 行につき演算子と、列か固定数値を 1 つ決めます。行は何行でも足せます。
演算子を選択必須
一括のときに出ます。+ と × の 2 つだけです。
列を選択(一括)必須
一括のときに出ます。数値の列を2 つ以上選びます。選んだ列を左から順に同じ演算子でつなぎます。
列選択オプション
一括のときに出ます。特定の文字列から始まる列・で終わる列・を含む列を一括で選べ、選択した列を除外するで裏返せます。

演算子と計算のされ方

演算子意味
+足す
-引く
×かける
÷割る
商割った答えの整数部分
余り割った余り
累乗左の数を右の数だけかけ合わせる

計算は上から順に行われます。 掛け算を先に計算する、といった優先順位はありません。売上 + 原価 × 2 と並べると、(売上 + 原価) × 2 になります。順番を変えたいときは、ノードを 2 つに分けてください。

生成される SQL

PostgreSQL につないで、単価 × 数量 を 金額 という新しい列にした場合です。

SELECT "単価", "数量", ("単価" * "数量") AS "金額"
FROM "orders"

演算子ごとに組み立てられる形が違います。

演算子PostgreSQL での形
+左 + 右
-左 - 右
×左 * 右
÷左 / 右
商TRUNC(左 / 右)
余りMOD(左, 右)
累乗POW(左, 右)

関数名はつなぎ先によって変わります。 実際に組まれた SQL はSQLプレビューで確かめてください。

エラーと対処

どのエラーも、設定を直してノードを実行し直せば消えます。

新しい列の名前が空

「新規列に挿入」を選んで名前を入れずに実行すると出ます。

列名を入力してください

直し方 — 列名を入れてください。

上書き先の列が選ばれていない

「既存列に上書き」を選んで列を選んでいないと出ます。

列を選択してください

直し方 — 入り先の列を選んでください。

上流にない列が選ばれている

前のノードで列が消えたあとに実行すると出ます。

存在しない列が選択されています

直し方 — 列を選び直してください。

入力がつながっていない

前のノードがつながっていないと出ます。

カラムが選択されていません。条件を確認してください

直し方 — 入力にノードをつないでください。

一括で列が 1 つしか選ばれていない

「一括」を選んで列を 2 つ以上選んでいない場合です。翻訳された文言はなく、英語のまま出ます。

type all is required 2 columns

直し方 — 列を 2 つ以上選んでください。

よく使う例

1. 金額を出す

お題 — 単価と数量から金額を出したい

入力 — 単価 数量

設定 — 新規列に挿入 → 金額、簡易設定、最初の項に 単価、演算子 × と項 数量

出力 — 金額 が増えます

2. 利益率を出す

お題 — 利益 ÷ 売上 を出したい

入力 — 利益 売上

設定 — 新規列に挿入 → 利益率、簡易設定、最初の項に 利益、演算子 ÷ と項 売上

出力 — 利益率 が増えます。売上 が 0 の行があるときは先に外してください

3. 固定の数をかける

お題 — 税込み金額を出したい

入力 — 金額

設定 — 最初の項に 金額、演算子 ×、「固定数値を演算する」を on にして 1.1

出力 — 税込みの列

4. 月別の列を全部足す

お題 — 売上_1月 〜 売上_12月 を合計した列がほしい

入力 — 商品 売上_1月 〜 売上_12月

設定 — 一括、演算子 +、列選択オプションの「特定の文字列から始まる列を一括選択」に 売上_

出力 — 12 列を足した 1 列

5. 既存の列を書き換える

お題 — 単位を千円に直したい

入力 — 売上

設定 — 既存列に上書き → 売上、簡易設定、最初の項に 売上、演算子 ÷、固定数値 1000

出力 — 売上 が千円単位になります(元の値は残りません)

6. 計算してから端数を落とす

お題 — 税込み金額を 1 円未満切り捨てにしたい

入力 — 金額

設定 — この機能のあとに数値列の端数処理をつなぐ

出力 — 端数のない金額

関連