Previous: 演算子の優先順位 Up: mcal Next: 日付型と時刻型について MCMD2
MCMD2 : mcal : 関数

4.12 関数

以下では、数値関連(4.12)、三角関数関連(4.13)、 文字列関連(4.14)、正規表現関連(4.15)、 日付時間関連(4.16)、論理関数(4.17)、 行/項目情報関連(4.18)、NULL値関連(4.19)、 そして型変換関連(4.20)の9つに分けて解説する。

Table 4.12: 数値関連関数一覧

節

関数名

機能

出力型

4.95

sum($num_1,num_2,\cdots $)

合計

$num$

4.22

avg($num_1,num_2,\cdots $)

平均

$num$

4.94

sqsum($num_1,num_2,\cdots $)

平方和

$num$

4.65

min($num_1,num_2,\cdots $)

最小値

$num$

4.63

max($num_1,num_2,\cdots $)

最大値

$num$

4.75

product($num_1,num_2,\cdots $)

積

$num$

4.39

factorial($num$)

階乗

$num$

4.45

gcd($num_1$,$num_2$)

最大公約数

$num$

4.54

lcm($num_1$,$num_2$)

最小公倍数

$num$

4.93

sqrt($num$)

平方根

$num$

4.14

abs($num$)

絶対値

$num$

4.90

sign($num$)

符号

$num$

4.50

int($num$)

整数部

$num$

4.44

fract($num$)

小数部

$num$

4.88

round($num$,基準値)

四捨五入

$num$

4.42

floor($num$,基準値)

切り捨て

$num$

4.26

ceil($num$,基準値)

切り上げ

$num$

4.74

power($num$,指数)

累乗

$num$

4.38

exp($num$)

指数関数

$num$

4.60

log($num$,底)

対数

$num$

4.59

ln($num$)

自然対数

$num$

4.62

log2($num$)

底が2の対数

$num$

4.61

log10($num$)

常用対数

$num$

4.34

dist(タイプ,$num_1,num_2,\cdots $)

距離

$num$

4.35

distgps(緯度1,経度1,緯度2,経度2)

GPS距離

$num$

4.47

heron($num_1,num_2,\cdots $)

三角形の面積

$num$

4.77

rand([乱数の種])

一様乱数

$num$

4.78

randi(最小値, 最大値[, 乱数の種])

整数一様乱数

$num$

4.71

nrand(平均, 標準偏差[, 乱数の種])

正規乱数

$num$

4.73

pi()

円周率

$num$

4.37

e()

ネイピア数

$num$

3.1

format()

書式付き出力

$str$

Table 4.13: 三角関数関連関数一覧

節

関数名

機能

出力範囲

4.15

acos($num$)

コサインの逆関数

$0\sim \pi $

4.19

asin($num$)

サインの逆関数

$-\pi \sim \pi $

4.20

atan($num$)

タンジェントの逆関数

$-\pi \sim \pi $

4.21

atan2($num_1$,$num_2$)

座標($num_1,num_2$)の角度

$-\pi \sim \pi $

4.27

cos($r$)

コサイン

$-1.0\sim 1.0$

4.91

sin($r$)

サイン

$-1.0\sim 1.0$

4.96

tan($r$)

タンジェント

$-\infty \sim \infty $

4.32

degree($r$)

角度

$-\pi \sim \pi $

4.76

radian(角度)

度数を入力したときのラジアンを出力

$-\pi \sim \pi $

4.28

cosh($r$)

双曲線余弦

$0\sim \infty $

4.92

sinh($r$)

双曲線正弦

$-\infty \sim \infty $

4.97

tanh($r$)

双曲線逆正接

$-1.0\sim 1.0$


$r$はラジアンを表した数値。
Table 4.14: 文字列関連関数一覧

節

関数名

機能

出力型

4.25

cat($token, str_1, str_2, \cdots $)

文字列併合

$str$

4.57

length($str$)

文字列長

$num$

4.40

fixlen($str$, 長さ, 位置, padding文字)

固定長変換

$str$

4.87

right($str$,長さ)

末尾切り出し

$str$

4.56

left($str$,長さ)

先頭切り出し

$str$

4.64

mid($str$, 開始位置, 長さ)

部分文字列切り出し

$str$

4.102

toupper($str$)

小文字大文字変更

$str$

4.100

tolower($str$)

大文字小文字変更

$str$

4.24

capitalize($str$)

先頭文字大文字変換

$str$

4.51

match(検索文字列,$str_1,str_2,\cdots $)

検索

$bool$

4.46

hasspace($str$)

空白類文字検索

$bool$

Table 4.15: 正規表現関連関数一覧

節

関数名

機能

出力型

4.80

regexm($str$,正規表現)

全体マッチ

$bool$

4.84

regexs($str$,正規表現)

マッチ

$bool$

4.83

regexrep($str$,正規表現,置換文字列)

マッチ文字列の置換

$str$

4.79

regexlen($str$,正規表現)

マッチ文字数

$num$

4.82

regexpos($str$,正規表現)

開始位置

$num$

4.86

regexstr($str$,正規表現)

マッチ文字列

$str$

4.81

regexpfx($str$,正規表現)

マッチ文字列のプレフィックス

$str$

4.85

regexsfx($str$,正規表現)

マッチ文字列のサフィックス

$str$

Table 4.16: 日付時間関連関数一覧

節

関数名

機能

出力型

4.99

today()

本日の日付

$date$

4.69

now()

現在時刻

$time$

4.103

tseconds($time$)

経過秒数

$num$

4.55

leapyear($dt$)

閏年判定

$bool$

4.106

year($dt$)

西暦年

$num$

4.67

month($dt$)

月

$num$

4.30

day($dt$)

日

$num$

4.105

week($dt$)

週番号

$num$

4.36

dow($dt$)

曜日

$num$

4.98

time($time$)

時分秒

$str$

4.31

date($time$)

年月日

$str$

4.48

hour($time$)

時

$num$

4.66

minute($time$)

分

$num$

4.89

second($time$)

秒

$num$

4.16

age($dt_1,dt_2$)

年令

$num$

4.33

diff($dt_1,dt_2$)

期間

$num$

4.104

uxt($dt$)

UNIX時変換

$num$(UNIX時刻)

4.53

julian($dt$)

ユリウス通日変換

$num$(ユリウス通日)


$dt$は、$date$,$time$の何れかを表す。
Table 4.17: 論理関連関数一覧

節

関数名

機能

出力型

4.17

and($bool_1,bool_2,\cdots )$

論理積

$bool$

4.72

or($bool_1,bool_2,\cdots )$

論理和

$bool$

4.68

not($bool)$

否定

$bool$

4.49

if($bool,num_1,num_2$)

条件選択

$num$

4.49

if($bool,str_1,str_2$)

 

$str$

4.49

if($bool,date_1,date_2)$

 

$date$

4.49

if($bool,time_1,time_2)$

 

$time$

Table 4.18: 行/項目情報関連関数一覧

節

関数名

機能

出力型

4.58

line()

現在処理中の行番号を返す

$num$

4.101

top()

先頭行

$bool$

4.23

bottom()

終端行

$bool$

4.41

fldsize()

項目数

$num$

4.18

argsize($str_1,str_2,\cdots $)

引数の数

$num$

Table 4.19: NULL値関連関数一覧

節

関数名

機能

出力型

4.70

nulln()

NULL値

$num$

4.70

nulls()

 

$str$

4.70

nulld()

 

$date$

4.70

nullt()

 

$time$

4.70

nullb()

 

$bool$

4.52

isnull($num$)

NULL値判定

$bool$

4.52

isnull($str$)

 

$bool$

4.52

isnull($date$)

 

$bool$

4.52

isnull($time$)

 

$bool$

4.52

isnull($bool$)

 

$bool$

4.29

countnull($num_1,num_2,\cdots $)

NULL値の数

$num$

4.29

countnull($str_1,str_2,\cdots $)

 

$num$

4.29

countnull($date_1,date_2,\cdots $)

 

$num$

4.29

countnull($time_1,time_2,\cdots $)

 

$num$

4.29

countnull($bool_1,bool_2,\cdots $)

 

$num$

Table 4.20: 型変換関連関数一覧

4.107

$num$

$str$

$date$

$time$

$bool$

$num$

 

n2s($num$)

   

n2b($num$)

$str$

s2n($str$)

 

s2d($str$)

s2t($str$)

s2b($str$)

$date$

 

d2s($date$)

 

d2t($date$)

 

$time$

 

t2s($time$)

t2d($time$)

   

$bool$

b2n($bool$)

b2s($bool$)

     

各セルの関数は、「行ラベル$\rightarrow $列ラベル」の変換関数を示している。
空白セルは、そのような変換関数が定義されていないことを意味する。
Previous: 演算子の優先順位 Up: mcal Next: 日付型と時刻型について MCMD2