MySQLには数値計算に使える関数がいくつか用意されています。この記事ではその中でも特に基本的なものを例に、関数を使った計算方法について学びましょう。
数値関数を使って計算するには次のように記述します。
数値関数(計算内容)
実際にSELECT文で、特定のカラムの値を計算してその結果を取得してみましょう。
-- titlesという名前のテーブルがあれば削除 DROP TABLE IF EXISTS titles; -- titlesという名前のテーブルを作成 CREATE TABLE titles ( id INT NOT NULL AUTO_INCREMENT, author_id INT, post_title VARCHAR(50) UNIQUE, view INT, PRIMARY KEY (id) ); -- レコードを挿入 INSERT INTO titles (author_id, post_title, view) VALUES (1, 'cMySQLとは', 10), (2, 'aSQLとはなにか', 50), (1, 'bDockerでMySQLを使う方法', 100); -- viewカラムの値を数値計算したものを取得 SELECT FLOOR(view / 3) AS floor, -- 端数を切り捨て CEIL(view / 3) AS ceil, -- 端数を切り上げ ROUND(view / 3) AS round, -- 四捨五入 ROUND(view / 3, 2) AS round2, -- 桁数を指定して四捨五入 ABS(view / 3) AS abs, -- 絶対値 POW(view / 3, 2) AS pow -- 指定した指数で累乗 FROM titles;
実行結果は次のとおりです。
floor ceil round round2 abs pow 3 4 3 3.33 3.3333 11.11111110888889 16 17 17 16.67 16.6667 277.7777777555556 33 34 33 33.33 33.3333 1111.1111110888887
このほかにもMySQLには数値計算用の関数がいくつか用意されています。
詳しくは公式リファレンスマニュアルに記載されていますので確認してみて下さい。
※MySQL5.6と8.0で使える関数が異なる点に注意しましょう。