以下の表は、Zoho Analyticsで数式列を作成する際に使用できる関数の一覧です。関数の適用対象となる列のデータの種類によって分類されています。
日付の関数
|
||
| 関数 |
説明 |
例 |
| Absolute Month - absmonth(日付の列) |
日付の値をもとに、「Month, yyyy」の形式で年と月を出力します。 |
absmonth('2022/8/7') = August, 2022 |
| Absolute Quarter - absquarter(日付の列) |
日付の値をもとに、「Quarter, yyyy」の形式で年と四半期を出力します。 |
absquarter('2022/8/7') = Q3, 2022 |
| Absolute Week - absweek(日付の列) |
日付の値をもとに、「Week, yyyy」の形式で年と週を出力します。 |
absweek('06/04/2022') = W14, 2022 |
|
Add Date - adddate(日付の列, 日数) |
日付に、指定した日数を加算した日付を出力します。 |
adddate('2022/8/7',10) = 2022/8/17 |
|
Add Week
addweek(日付の列, 週数) |
日付に、指定した週数を加算した日付を出力します。 |
addweek('2022-08-27',10) = 2022-11-05 |
|
Add Month
addmonth(日付の列, 月数) |
日付に、指定した月数を加算した日付を出力します。 |
addmonth('2022-08-27',10) = 2023-06-27 |
|
Add Quarter
addquarter(日付の列, 四半期数) |
日付に、指定した四半期数を加算した日付を出力します。 |
addquarter('2022-08-27',10) = 2025-02-27 |
|
Add Year
addyear(日付の列, 年数) |
日付に、指定した年数を加算した日付を出力します。 |
addyear('2022-08-27',10) = 2033-08-27 |
| Add Time - addtime(日付の列, 時間) |
日付に、指定した時間を加算した日付を出力します。 |
addtime ('2022/02/21 18:23:26', '01:20:10') = 2022/02/21 19:43:36 |
|
Add Hours
addhour(日数, 時間数) |
日付に、指定した時間を加算した日時を出力します。 |
addhour('2022-08-27',10) = 2022-08-27 10:00:00 |
|
Add Minutes
addminute(日付の列, 分数) |
日付に、指定した時間(分)を加算した日時を出力します。 |
addminute('2022-08-27',10) = 2022-08-27 00:10:00 |
|
Add Seconds
addsecond(日付の列, 秒数) |
日付に、指定した時間(秒)を加算した日時を出力します。 |
addsecond('2022-08-27',10) = 2022-08-27 00:00:10 |
|
Peroid Add
period_add(年月, 月数) |
年月の値に月数を加算し、 「yrmth」の形式で出力します。 |
period_add(202208,6) = 202302 |
|
Age Months
age_months(開始日, 終了日(任意)) |
2つの日付の間の経過月数を出力します。 |
age_months('2022-08-27','2022-06-28') = 10 |
|
Age Years
age_years(開始日, 終了日(任意)) |
2つの日付の間の経過年数を出力します。 |
age_years('2022-08-27','2027-08-03') = 4 |
|
Business Completion Day
business_completion_day(開始日, 日数, 除外する曜日(任意)) |
日付に対し、週末/休日を除いた日数を加算した日付を出力します(週末/休日として扱う曜日は指定できます)。週末j/休日を指定しない場合、初期設定で土曜日と日曜日が週末と見なされます。 |
business_completion_day('2022-01-01',10) = 2022-01-15 |
|
Business Days
business_days(開始日, 終了日, 除外する曜日(任意)) |
2つの日付の間の営業日数を出力します(週末/休日として扱う曜日は指定できます)。週末を指定しない場合、初期設定で土曜日と日曜日が週末/休日と見なされます。 |
business_days('2022-01-27','2022-08-03') = 134 |
|
Business Hours
business_hours(開始日時, 終了日時, 営業開始時間, 営業終了時間, 除外する曜日(任意))
|
2つの日付の間の営業時間数を出力します(週末/休日として扱う曜日や1日の営業開始/終了時間は指定できます)。週末/週末を指定しない場合、初期設定で土曜日と日曜日が週末と見なされます。 |
business_hours('2022-01-27 10:00:00','2022-08-03 08:00:00','09:00:00','10:00:00','1000001') = 134 |
|
Convert String to Date
convert_string_to_date(テキストの列, 日付形式) |
テキストを日付に変換し、指定した形式で出力します。 |
convert_string_to_date('24/12/2022', '%d/%m/%Y') = 2022-12-24 |
|
Convert to Datetime
convert_to_datetime(テキストの列, 日付形式) |
指定した日付形式に基づいて、テキストの値を変換して出力します。 |
convert_to_datetime('2022 Aug 27','yyyy MMM dd') = 27 Aug, 2022 |
|
Convert TZ
convert_tz(日付の列, 現在のタイムゾーンのオフセット値, 変換後のタイムゾーンのオフセット値) |
タイムゾーンを変換した日時の値を出力します。 |
convert_tz('2022-01-01 12:00:00','+00:00','+10:00') = 2022-01-01 22:00:00 |
|
Current Date
currentdate() |
コンピューター/サーバーの現在の日時を出力します。 |
currentdate() = 15 Sep, 2022 10:06:18 |
|
Current Time
current_time() |
現在の時間を出力します。 |
|
|
Current Timestamp
current_timestamp() |
現在の日時を出力します。 |
|
|
Now
now() |
現在の日時を出力します。 |
|
|
Today
today() |
今日の日付を出力します。 |
|
|
Tomorrow
tomorrow() |
明日の日付を出力します。 |
|
|
Yesterday
yesterday() |
昨日の日付を出力します。 |
|
|
UTC date
utc_date() |
現在のUTC(協定世界時)の日付を出力します。 |
|
|
UTC time
utc_time() |
現在のUTC(協定世界時)の時間を出力します。 |
|
|
UTC date-time
utc_timestamp() |
現在のUTC(協定世界時)の日時を出力します。 |
|
|
Date
date(日付の列) |
日時から日付の値を出力します。 |
date('2022-08-07 14:15:16') = 2022-08-07 |
|
Date Format
date_format(日付の列, 変換後の日付形式) |
指定した日付形式に基づいて、日付をテキストに変換して出力します。 |
date_format('2022-08-03','%W %M %Y') = Sunday August 2022 |
|
Date and Time Diff - dateand timediff(単位, 開始日, 終了日(任意)) |
指定した単位に基づいて、日付間の差分を出力します。指定できる単位は、YEAR(年)、QUARTER(四半期)、MONTH(月)、WEEK(週)、DAY(日)、HOUR(時)、MINUTE(分)、SECOND(秒)です。 |
dateandtimediff(DAY, '2022-01-01', '2022-05-01')=120 上記の例は、日付間の差分を日数で出力します。 |
|
Date Diff
datediff(日付の列1, 日付の列2) |
日付間の差分(日数)を出力します。 |
datediff('2022/8/11','2021/9/11') = 334 |
|
Period Diff
period_diff(年月1, 年月2) |
2つの年月の値における差分(月数)を出力します。 |
period_diff(202208,202202) = 6 |
| Day - day(日付の列) |
日付の値から日数の値を出力します。 |
day( '2022/9/9') = 9 |
|
Day Name
dayname(日付の列) |
日付の値から曜日の名前を出力します(例:Sunday(日曜日)、Monday(月曜日)……)。 |
dayname('2022-08-07') = Sunday |
|
Day of Week
dayofweek(日付の列) |
日付の値をもとに、曜日を数値で出力します(例:日曜日=1、月曜日=2、……、土曜日=7)。 |
dayofweek('2022/9/9') = 6 |
|
Day of Month
dayofmonth(日付の列) |
日付の値をもとに、月の開始日からの経過日数を出力します。 |
dayofmonth('2022-08-07') = 7 |
|
Day of Quarter
dayofquarter(日付の列) |
日付の値をもとに、四半期の開始日からの経過日数を出力します。 |
dayofquarter('2022-08-07') = 38 |
| Day of Year - dayofyear(日付の列) |
日付の値をもとに、年の開始日からの経過日数を出力します(0~365)。 |
dayofyear('2022/9/2') = 245 |
|
Days Between
days_between(開始日, 終了日(任意)) |
2つの日付の間の差分(日数)を出力します。 |
days_between('2022-01-27','2022-08-03') = 188 |
|
End date
end_day(単位, 日付の列) |
日付の値をもとに、指定した単位における最終日を出力します(単位としてmonthを指定した場合、月の最終日を出力します)。 |
end_day(month,'2022-08-27') = 2022-08-31 |
|
First Date Current Week
first_date_current_week(日付の列, 週の開始日(任意)) |
日付の値をもとに、週の開始日となる日付を出力します。週の開始日として扱う曜日は、数値で指定します(例:1 - 日曜日、2 - 月曜日、……、7 - 土曜日)。指定しない場合、週の開始日として扱う曜日は、日曜日と見なされます。 |
first_date_current_week('2022-10-11') = 2022-10-09 |
| From Unixtime - fromunixtime(秒) |
秒の値からUNIX時間を出力します。 |
fromunixtime('1000') = 1970/01/01 05:46:40 |
| Hour - hour(日付の列) |
日付の値から時間の値を出力します。 |
hour('2022/8/7 10:35:23') = 10 |
| Last Day - lastday(日付の列) |
日付の値をもとに、月の最終日を出力します。 |
lastday('2022/9/7') = 2022/9/30 |
|
Last N Days
last_nday(日付の列, 日数) |
日付の値をもとに、指定した日数を減算した日付を出力します。 |
last_nday('2022-08-04',15) = 2022-07-21 |
|
Last N Months
last_nmonth(日付の列, 月数) |
日付の値をもとに、指定した月数を減算した日付を出力します。 |
last_nmonth('2022-08-04',15) = 2021-06-04 |
|
Next N Days
next_nday(日付の列, 日数) |
日付の値をもとに、指定した日数を加算した日付を出力します。出力する日付は、 指定した日付の値から数えて計算されます。 |
next_nday('2022-08-04',15) = 2018-08-19 |
|
Next N Month
next_nmonth(日付の列, 日数) |
日付の値をもとに、指定した月数を加算した日付を出力します。出力する日付は、 指定した日付の値から数えて計算されます。 |
next_nmonth('2022-08-04',15) = 2023-11-04 |
|
Next Weekday
next_weekday(日付の列, 曜日(数値)) |
日付の値をもとに、週の中で指定した曜日に該当する日付を出力します。 |
next_weekday('2022-08-01',1) = 2022-07-31 |
|
Previous N Day
previous_nday(日付の列, 日数) |
日付の値をもとに、指定した日数を減算した日付を出力します。出力する値は、指定した日付の値から数えて計算されます。 |
previous_nday('2022-08-04',15) = 2022-07-20 |
|
Previous N Months
previous_nmonth(日付の列, 日数) |
日付の値をもとに、指定した月数を減算した日付を出力します。出力する値は、指定した日付の値から数えて計算されます。 |
previous_nmonth('2022-08-04',15) = 2022-05-04 |
| Make Date - makedate(年, 日数) |
年と日数(0~365)の値から、日付の値を出力します。 |
makedate('2022','23') = 2022/1/23 |
|
Microsecond
microsecond(日付の列) |
日時の値からマイクロ秒の値を出力します。 |
microsecond('2022-08-07 10:35:23.3427') = 342700 |
| Minute - minute(日付の列) |
日時の値から分の値を出力します。 |
minute('2022/8/7 10:35:23') = 35 |
| Second - second(日付の列) |
日時の値から秒の値を出力します。 |
second('2022/9/7 10:35:23') = 23 |
| Modified Time - modifiedtime() |
データの作成日時(データが新しく追加された場合)、または最終更新日時を出力します。この関数を適用すると、数式の作成日時をはじめに出力します。その後、データの更新日時を出力します。 |
|
| Month - month(日付の列) |
日付の値から月の名称を出力します。 |
month('2022/9/7') = September |
|
Month Name
monthname(日付の列) |
日付の値から月の名称を出力します。 |
monthname('2022/9/7') = September |
| Month Number - monthnum(日付の列) |
日付の値から月の数を出力します。 |
monthnum('2022/9/7') = 9 |
|
Months Between
months_between(開始日, 終了日(任意), 出力値の形式(0または1/任意)) |
2つの日付の値における差分の月数を出力します。この関数では、1か月を31日間として計算します。また、出力値を整数にする場合は、出力形式を指定するための入力値(パラメーター)に「1」を指定します。出力値に小数を含める場合は、「0」を指定します。 |
months_between('2022-08-27','2027-08-03',1) = 59 |
| Quarter - quarter(日付の列) |
日付の値から四半期の値を出力します。 |
quarter('2022/8/7') = Q3 |
|
Quarter Name
quartername(日付の列, 会計年度の開始月(任意)) |
日付の値から四半期名を出力します。 |
quartername('2022-08-07') = Q3 |
|
Quarter Number
quarternum(日付の列, 会計年度の開始月(任意)) |
日付の値から、四半期を数値で出力します。 |
quarternum('2022-08-07') = 3 |
|
Second to Time
sec_to_time(秒) |
秒数を「hh:mm:ss」の形式に変換して出力します。 |
sec_to_time(86399) = 23:59:59 |
|
Second
second(日付の列) |
日付の値から秒の値を出力します。 |
second('2022-08-07 10:35:23') = 23 |
|
Start Date
start_day(単位, 日付の列) |
日付の値をもとに、指定した単位における開始日を出力します(単位としてmonthを指定した場合、月の初日を出力します)。 |
start_day(month,'2022-08-27') = 2022-08-01 |
| Sub Date - subdate(日付の列, 日数) |
日付の値から、指定した日数を減算した日付を出力します。 |
subdate('2022/9/15','6') = 2022/9/9 |
| Sub Time - subtime(日付の列,時間) |
日時の値から、指定した時間を減算した日時を出力します。 |
subtime('2022/02/21 18:23:26','01:20:10') = 2022/02/21 17:03:16 |
|
Time
time(日付の列) |
日時の値から時間の値を出力します。 |
time('2022-08-07 14:15:16') = 14:15:16 |
|
Time Format
time_format(時間, 変換後の時間形式) |
時間の値を、指定した形式に変換して出力します。 |
time_format('19:30:41.32','%H %h %i %s %f') = 19 07 30 41 320000 |
|
Time to Sec
time_to_sec(日付の列) |
時間の値を秒に変換して出力します。 |
time_to_sec('2022-08-07 14:15:16') = 51316 |
|
Time Diff
timediff(開始日, 終了日) |
2つの時間の差分を出力します。 |
timediff('2022-08-17 16:15:14','2022-08-17 14:15:16') = 01:59:58 |
|
Timestamp
timestamp(日付の列) |
日付の値から日時を出力します。 |
timestamp('2022-11-05') = 2022-11-05 00:00:00 |
|
Timestamp Add
timestampadd(単位, 数値の列, 日付の列) |
指定した単位に基づいて、数値で指定した期間を加算した日時を出力します。 |
timestampadd(week,1,'2022-11-05 19:00:00') = 2022-11-12 19:00:00 |
|
Timestamp Diff
timestampdiff(単位, 開始日, 終了日) |
終了日から開始日を減算した値を、 指定した単位で出力します。 |
timestampdiff(year,'2022-05-01','2021-01-01') = -1 |
|
Unix Timestamp
unix_timestamp(日付の列(任意)) |
指定した日付の値をもとに、「1970-01-01 00:00:00」からの経過時間(秒)を出力します。 |
unix_timestamp('2022-10-10 12:35:45') = 1665405345 |
|
Week
week(日付の列) |
日付の値から週の値を出力します。 |
week('2022-01-14') = 2 |
|
Weekday
weekday(日付の列) |
日時の値から曜日の値を出力します。 |
weekday('2022-08-07') = Sunday |
|
Week of Month
weekofmonth(日付の列) |
日付の値から、当該月における週番号(その月の第何週かを表す値)を出力します。 |
weekofmonth('2022-01-14') = 3 |
|
Week of Year
weekofyear(日付の列, 週の開始日(任意), 週の指定方法(任意), 会計年度の開始月(任意)) |
日付の値から、当該年における週番号(その年の第何週かを表す値)を出力します。 |
weekofyear('2022-04-21') = 16 |
| Year - year(日付の列) |
日付の値から年の値を出力します。 |
year('2022/9/7') = 2022 |
|
Year Week
yearweek(日付の列) |
日付の値から、年と週を表す値を出力します。 |
yearweek('2022-01-14') = 202202 |
数値の関数
|
||
| 関数 |
説明 |
例 |
| Abs - abs(数値の列) |
数値の列の絶対値を出力します(プラス記号/マイナス記号を除いた数値を出力します)。 |
abs(-10) = 10 |
| Acos - acos(数値の列) |
数値の列における、コサインの逆関数(アークコサイン)の値を出力します。-1から1の間に数値の列の値がない場合、空の値(NULL)を出力します。 |
acos(0.5) = 1.047197 |
| Asin - asin(数値の列) |
数値の列における、サインの逆関数(アークサイン)の値を出力します。-1から1の間に数値の列の値がない場合、空の値(NULL)を出力します。 |
asin(0.5) = 0.523598 |
| Atan - atan(数値の列) |
数値の列における、タンジェントの逆関数(アークタンジェント)の値を出力します。 |
atan(2) = 1.107149 |
| Atan2 - atan2(数値の列1, 数値の列2) |
指定した数値の列1と数値の列2における、タンジェントの逆関数(アークタンジェント)の値を出力します。 |
atan2(0.8, 0.6) = 0.927295 |
| Ceil - ceil(数値の列) |
数値の列の小数点以下を切り上げた値を出力します。 |
ceil(11.56) = 12 |
|
Ceiling
ceiling(数値の列) |
数値の列の値以上の、 最小の整数値を出力します。 |
ceiling(10.43) = 11 |
|
Conv
conv(列, 元の基数, 変換後の基数) |
数値の列の基数を変換した値を出力します。 |
conv('a',16,2) = 1010 |
|
Convert base convertbase(列, 元の基数, 変換後の基数) |
数値の列の基数を 変換した値を出力します。 |
convertbase('a',16,2) = 1010 |
| Cos - cos(数値の列) |
数値の列における、コサインの値を出力します。 |
cos(0) = 1 |
| Cot - cot(数値の列) |
数値の列における、タンジェントの逆数(コタンジェント)の値を出力します。 |
cot(0.25) = 3.916317 |
|
CRC32
crc32(テキストの列) |
指定した列の値から、巡回冗長検査(CRC:Cyclic Redundancy Check)による計算処理を行い、符号なしの32ビットの値を出力します。 |
crc32('111') = 1298878781 |
| Degrees - degrees(数値の列) |
弧度法(ラジアン)で入力した値に等しい角度を、度数法の値で出力します。 |
degrees(1) = 57.2957795 |
| Exp - exp(数値の列) |
数値の列における指数関数の値を出力します。 |
exp(2) = 7.389056 |
| Floor - floor(数値の列) |
数値の列の小数点以下を切り捨てた値を出力します。 |
floor(11.56) = 11 |
|
Format
format(数値の列1, 小数点以下の桁数) |
1番目の入力値の列の値において、小数点以下の値を、2番目の入力値で指定した桁数で切り捨てた数値を出力します。 |
format(1.0001111,5) = 1.00011 |
| Greatest - greatest(数値の列, ……, 数値の列) |
入力した値の中から、最大値を出力します。 |
greatest(10,20,5) = 20 |
| Least - least(数値の列, ……, 数値の列) |
入力した値の中から、最小値を出力します。 |
least(10,20,5) = 5 |
| Ln - ln(数値の列) |
数値の列における自然対数の値を出力します。 |
ln(5) = 1.609438 |
|
Log
log2(数値の列) |
数値の列における、二進対数(2を底とする対数)の値を出力します。 |
log2(32) = 5 |
| Log10 - log10(数値の列) |
数値の列における、常用対数(10を底とする対数)の値を出力します。 |
log10(3) = 0.477121 |
| Log2 - log2(数値の列) |
数値の列における、二進対数(2を底とする対数)の値を出力します。 |
log2(32) = 5 |
| Mod - mod(数値の列1, 数値の列2) |
数値の列1の値を数値の列2の値で割った余りの値を出力します。 |
mod(10,3) = 1 |
OCT oct(数値の列) |
数値の列の値を8進数に変換した値を出力します。 |
oct(12) = 14 |
| Pi - pi() |
円周率の値(パイ)を出力します。 |
pi() = 3.14159265358979 |
| Power - pow(数値の列1, 数値の列2) |
数値の列1の値を数値の列2の値で累乗した値を出力します。 |
pow(2,3) = 8 |
| Random - rand() |
0と1の間のランダムな値を出力します。 |
rand() = 0.9233482386203 |
| Radians - radians(数値の列) |
度数法で入力した値に等しい角度を、弧度法(ラジアン)の値で出力します。 |
radians(180) = 3.1415926 |
| Round - round(数値の列) |
数値の列の値を四捨五入した整数値を出力します。 |
round(10.67) = 11 |
| Sign - sign(数値の列) |
数値の列の値が負の場合は「-1」、0の場合は「0」、正の場合は「1」を出力します。 |
sign(-23) =-1 |
| Sin - sin(数値の列) |
数値の列におけるサインの値を出力します。 |
sin(0) = 0 |
| Square - square(数値の列) |
数値の列の値を2乗した値を出力します。 |
square(10) = 100 |
| Square Root - sqrt(数値の列) |
数値の列の値における、平方根の値を出力します。 |
sqrt(16) = 4 |
| Tan - tan(数値の列) |
数値の列の値における、タンジェントの値を出力します。 |
tan(0.5) = 0.546302 |
テキストの関数
|
||
| 関数 |
説明 |
例 |
|
ASCII
ascii(テキストの列) |
列の値の頭文字から、ASCIIコードの値を出力します。 |
ascii('abcddb') = 97 |
|
Bit Length
bit_length(テキストの列) |
テキストの列の値から、テキストのビット数を出力します。 |
bit_length('AA') = 16 |
|
Char
char(数値の列) |
数値の列の値から、 ASCIIコードの値に応じたテキストの値を出力します。 |
char(97,98) = ab |
|
Char Length
char_length(テキストの列) |
テキストの列の値の文字数を出力します。 |
char_length('aa1') = 3 |
|
Character Length
character_length(テキストの列) |
テキストの列の値の文字数を出力します。 |
character_length('aa1') = 3 |
| Concat - concat(テキストの列, ……,テキストの列) |
入力値を結合したテキストを出力します。入力値のいずれかが空(NULL)の場合、NULLを出力します。 |
concat('abcd','ef','db') = abcdefdbd |
|
Concat Ignore Null
concat_ignore_null(テキストの列1, テキストの列2, ……) |
空の値(NULL)を無視して、入力値を結合したテキストを出力します。 |
concat_ignore_null('abcd','ef',null,'db') = abcdefdb |
|
Concat_WS - concat_ws(区切り文字, テキストの列1 , テキストの列2, ……) |
入力した複数のテキストの列の値を、指定した区切り文字で結合したテキストを出力します。区切り文字が空(NULL)の場合、NULLを出力します。 |
concat_ws('-','abcd','ef','db') = abcd-ef-db |
|
ELT
elt(数値の列, テキストの列1, テキストの列2, ……) |
入力した複数のテキストの列の値から、1番目の入力値で指定した位置(インデックス番号)のテキストを出力し ます。 |
elt('2','red','rose','is','beautiful') = rose |
|
Field
field(テキストの列1, テキストの列2, ……) |
入力した複数のテキストの列の値から 1番目の入力値で指定した値を検索し、見つかった最初の位置(インデックス番号)を出力します。 |
field('as','has','as','have') = 2 |
|
Find in Set
find_in_set(テキストの列1, テキストの列2) |
1番目の入力値で指定した値を、2番目に指定したコンマ区切りの複数の値から検索し、最初に見つかった位置(インデックス番号)を出力します。 |
find_in_set('10','2,5,8,10') = 4 |
|
Hex
hex(テキストの列) |
テキストの列の値を16進数に変換した値を出力し ます。 |
hex(255) = FF |
| Insert - insert(テキストの列, 開始位置, 長さ, 新しいテキスト) |
テキストの列の値をもとに、「開始位置」の位置(インデックス番号)から「長さ」で指定した部分テキストを、「新しいテキスト」に置換した値を出力します。「開始位置」には0より大きな値を指定する必要があります。「長さ」が「0」の場合、「新しいテキスト」は「開始位置」で指定した位置より前に挿入されます。 |
insert('abcddb', 3, 2, 'efgh') = abefghdb |
|
Initial Cap
initcap(テキストの列) |
最初の文字を大文字に変換して出力します。 |
initcap('analytics') = Analytics |
| Index of - indexof(テキストの列, 部分テキスト) |
テキストの列の値から、最初に「部分テキスト」の値が現れる位置(インデックス番号)を出力します。 |
indexof('abcddb','db') = 5 |
|
Instr
instr(テキストの列, 部分テキスト) |
2つのテキストの値を指定し、1番目の値で指定したテキストの中で、2番目の値で指定したテキストが見つかった位置(インデックス番号)を出力し ます。 |
instr('impossible','possible') = 3 |
|
Lcase
lcase(テキストの列) |
テキストの列の値をすべて 小文字に変換して出力します。 |
lcase('ABCd') = abcd |
| Left - left(テキストの列, 長さ) |
テキストの列における、左側から「長さ」の文字数のテキストを出力します。 |
left('abcdef',3) = abc |
| Length - length(テキストの列) |
テキストの列の値から、テキストの長さ(文字数)を出力します。 |
length('abcddb') = 6 |
|
Locate
locate(部分テキスト, テキストの列, 開始位置) |
テキストの列の値から、 最初に「部分テキスト」の値が現れる位置(インデックス番号)を出力します。 |
locate('db','zohodbdb',6) = 7 |
|
Lower
lower(テキストの列) |
テキストの列の値をすべて 小文字に変換して出力します。 |
lower('AbCD') = abcd |
| Lowercase - lowercase(テキストの列) |
テキストの列の値をすべて小文字に変換して出力します。 |
lowercase('AbCD') = abcd |
| Lpad - lpad(テキストの列, 長さ, 追加テキスト) |
テキストの列の値の左側に、全体で「長さ」の文字数になるように「追加テキスト」の文字を追加した値を出力します。テキストの列の値の文字数が「長さ」で指定した文字数より多い場合、テキストの列の値から「長さ」の分の文字数を出力します。 |
lpad('DB',5,'a') = aaaDB |
| Ltrim - ltrim(テキストの列) |
テキストの列の値の先頭にある空白を削除した値を出力します。 |
ltrim(' abcd') = abcd |
|
Make Set
make_set(数値の列, テキストの列1, ……) |
1番目の入力値(ビット値)で指定した値を2番目以降の入力値から抽出し、値を組み合わせて出力し ます。 |
make_set(1,'a','b','c') = a |
|
Mid
mid(テキストの列, 開始位置, 長さ) |
テキストの列の値をもとに、「開始位置」の位置(インデックス番号)から「長さ」で指定した長さの文字を抜き出した値を出力し ます。 |
mid('abcddb', 1, 4) = abcd |
Octet Length octet_length(テキストの列) |
テキストのバイト数を出力します。 |
octet_length('abcddb') = 6 |
ORD ord(テキストの列) |
テキストの最初の文字が日本語などのマルチバイト文字の場合、次の式の計算結果を出力します。最初のバイトのコード+(2番目のバイトのコード×256)+(3番目のバイトのコード×256×256)+……。テキストの最初の文字がマルチバイト文字ではない場合、ASCII()関数と同じ値を出力します。 |
ord('2') = 50 |
| Repeat - repeat(テキストの列, 回数) |
repeat('Abcd',3) = 'AbcdAbcdAbcd' |
|
| Replace - replace(テキストの列, 置換前の文字列, 置換後の文字列) |
テキストの列の値をもとに、「置換前のテキスト」を「置換後のテキスト」に置き換えた値を出力します。 |
replace('abcdac','ac','db') = abcddb |
| Reverse - reverse(テキストの列) |
テキストの列の値を反対にした(逆順に並べ替えた)値を出力します。 |
reverse('abcd') = dcba |
| Right - right(テキストの列, 長さ) |
テキストの列の値の右側から、「長さ」の文字数分の値を出力します。 |
right('abcdef',4) = cdef |
| Rpad - rpad(テキストの列, 長さ, 追加テキスト) |
テキストの列の値の右側に、全体で「長さ」の文字数になるように「追加テキスト」の文字を追加した値を出力します。テキストの列の値の文字数が「長さ」で指定した文字数より多い場合、テキストの列の値から「長さ」の分の文字数を出力します。 |
rpad('DB',5,'a') = DBaaa |
| Rtrim - rtrim(テキストの列) |
テキストの列の値の末尾にある空白を削除した値を出力します。 |
rtrim('abcd ') = abcd |
|
Soundex
soundex(テキストの列) |
テキストの列の値から、発音を表す値を出力します。異なるテキストの値が同じ発音の場合、同じ値を出力 します。 |
soundex('hello') = H400 |
|
Space
space(数値の列) |
指定した数値の分の空白文字(半角スペース)を出力します。 |
space(6) = ' ' |
| Strcmp - strcmp(テキストの列1, テキストの列2) |
2つのテキストの値を比べます。テキストの列1の値がテキストの列2の値より小さい場合は「-1」、同じ場合は「0」、大きい場合は「1」を出力します。 |
strcmp('abcd', 'abcde') =-1 |
|
Substr
substr(テキストの列, 開始位置, 長さ(任意)) |
テキストの列の値をもとに、「開始位置」の位置(インデックス番号)からの値を出力します。 「長さ」を指定すると、出力値の文字数を指定できます。 |
substr('abcddb', 2,) = bcddb |
| Substring - substring(テキストの列, 開始位置, 長さ) |
テキストの列の値をもとに、「開始位置」の位置(インデックス番号)から「長さ」で指定した長さの文字を抜き出した値を出力します。 |
substring('abcddb', 1, 4) = abcd |
|
Substring Between
substring_between(テキストの列, 部分テキスト1, 部分テキスト2, 開始位置(任意)) |
テキストの列の値から、「部分テキスト1」と「部分テキスト2」の間の値を出力します。 |
substring_between('abcddb','b','d',1) = c |
|
Substring Count
substring_count(テキストの列, 部分テキスト) |
テキストの列の値から、部分テキストの値が現れる回数を出力します。 |
substring_count('abcddb','cd') = 1 |
|
Substring Index
substring_index(テキストの列, 区切り文字, 区切り文字数) |
テキストの列の値から、「区切り文字」が「区切り文字数」(回数) で指定した回数までの値を出力します。 |
substring_index('how.are.you', '.', 2) = how.are |
|
Substring Position
substring_position(テキストの列, 部分テキスト, 開始位置(任意)) |
テキストの列の値から、部分テキストの値が現れる位置(インデックス番号)を出力します。 |
substring_position('abcddb','cd') = 3 |
| Trim - trim(テキストの列) |
テキストの列の値から、先頭と末尾の空白をすべて削除した値を出力します。 |
trim(' abcd ') = abcd |
|
Ucase
ucase(テキストの列) |
テキストの列の値をすべて大文字にした値を出力します。 |
ucase('abcD') = ABCD |
|
Unhex
unhex(テキストの列) |
列の値から、16進数の値に対応する値を出力します。 |
unhex('21') = ! |
|
Upper
upper(テキストの列) |
テキストの列の値をすべて大文字にした値を出力します。 |
upper('abcD') = ABCD |
| Uppercase - uppercase(テキストの列) |
テキストの列の値をすべて大文字にした値を出力します。 |
uppercase('abcD') = ABCD |
論理関数
|
||
| 関数 |
説明 |
例 |
| IF - if(式1/条件, 式2/真の場合の出力値, 式3/偽の場合の出力値) |
「式1」が真(true)の場合(条件として指定した内容を満たす場合)は「式2」を出力します。それ以外の場合は「式3」を出力します。 |
if(5> 10,100,3) = 3 |
|
If Case
if_case(列, 条件式1, 出力値1, 条件式2, 出力値2, ……, 条件を満たさない場合の値(任意)) |
列において、条件式を満たす場合に対応する出力値を出力します。 |
if_case('Subject','issue','Issue List',equals('bug'),'Bug List','Support List'):列「Subject」において、値が「issue」の場合は「Issue List」を出力し、値が「bug」の場合は「Bug List」を出力します。どの条件も満たさない場合は、「Support List」を出力します。if_case('Subject',startswith('issue','bug'),'Issue List',contains('help','Call'),'Call List','Support List'):列「Subject」において、値が「issue」または「bug」ではじまる場合は「Issue List」を出力し、値に「help」または「Call」を含む場合は「Call List」を出力します。どの条件も満たさない場合は、「Support List」を出力します。 |
| Ifnull - ifnull(式1,式2) |
「式1」の値や計算結果がNULL(空)でない場合は「式1」の値を出力します。それ以外の場合は「式2」の値を出力します。 |
ifnull(null,10) = 10 |
|
Is Empty
isempty(列) |
列に値が含まれない場合(値が空の場合)、「1」を出力します。値が含まれる場合は「0」を出力します。 |
isempty(null) = 1 |
| isnull( ) - isnull(式1) |
「式1」の値が空(NULL)の場合は「1」を出力します。その他の場合は「0」を出力します。 |
isnull(null) = 1 |
一般的な関数
|
||
| 関数 |
説明 |
例 |
| Coalesce - coalesce(null,null,1,...) |
複数の値から、NULL(空の値)以外で最初に現れる値を出力します。 |
coalesce(null,null,4) = 4 |