Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

SQLで四捨五入は「ROUND関数」を使う

SQLで値を四捨五入したい場合は ROUND関数 を使います。

記述方法は次の通りです。

  1. SELECT ROUND(数値);

ROUND関数は、以下のどのDBMSでも使える共通関数です。

では実際に、四捨五入した取得結果を確認してみましょう。

  1. mysql> SELECT ROUND(3.14);
  2. +-------------+
  3. | ROUND(3.14) |
  4. +-------------+
  5. | 3 |
  6. +-------------+
  7. 1 row in set (0.01 sec)
  8.  
  9. mysql> SELECT ROUND(3.55);
  10. +-------------+
  11. | ROUND(3.55) |
  12. +-------------+
  13. | 4 |
  14. +-------------+
  15. 1 row in set (0.00 sec)

上記のように、四捨五入した値が取得できました。

 

また、ROUND関数のカッコ内で演算することも可能です。

  1. mysql> SELECT ROUND(3.14 * 3.14);
  2. +--------------------+
  3. | ROUND(3.14 * 3.14) |
  4. +--------------------+
  5. | 10 |
  6. +--------------------+
  7. 1 row in set (0.01 sec)

四捨五入する時に小数点桁を指定する

SQLで四捨五入する時に小数点桁を指定したい場合は、次のように第二引数に小数桁を記述します。

  1. SELECT ROUND(数値, 小数桁);

こちらも実際に実行して確認してみましょう。

  1. mysql> SELECT ROUND(3.55, 1);
  2. +----------------+
  3. | ROUND(3.55, 1) |
  4. +----------------+
  5. | 3.6 |
  6. +----------------+
  7. 1 row in set (0.00 sec)
  8.  

小数桁を指定したことで、先ほどとは異なる値で取得できました。

このように、小数桁第一位で取得したい場合は「1」を、小数桁第二位で取得したい場合は「2」を指定しましょう。

ポテパンダの一言メモ

四捨五入したい桁数を指定するには、第二引数を使いましょう!

短期集中でWebエンジニアになれるスクールはこちら

四捨五入する時に整数を指定する

では、四捨五入する時に整数を指定したい場合はどうすればよいでしょうか。

結論を言うと、第二引数の桁数にマイナスを指定すればOKです。

  1. mysql> SELECT ROUND(152.55, -1);
  2. +-------------------+
  3. | ROUND(152.55, -1) |
  4. +-------------------+
  5. | 150 |
  6. +-------------------+
  7. 1 row in set (0.00 sec)
  8.  
  9. mysql> SELECT ROUND(152.55, -2);
  10. +-------------------+
  11. | ROUND(152.55, -2) |
  12. +-------------------+
  13. | 200 |
  14. +-------------------+
  15. 1 row in set (0.00 sec)

このように、整数で値を取得できました。

一の位で四捨五入したい場合は「-1」を、十の位で四捨五入したい場合は「-2」といったようになります。

ポテパンダの一言メモ

四捨五入で整数を指定するには、第二引数にマイナスの値を指定しましょう!

四捨五入と合わせて使う関数【切り捨て・切り上げ】

ここまで、SQLで値を四捨五入する方法について解説しました。

SQLでは、四捨五入と合わせて「切り捨て」「切り上げ」を行うことも多くあります。

それぞれの処理で使う関数をまとめると、次の通りです。

  • 四捨五入:ROUND関数
  • 切り捨て:FLOOR関数
  • 切り上げ:CEILING関数

では、切り捨てと切り上げについても動作を確認してみましょう。

それぞれ、記述方法は次の通りです。

  1. SELECT FLOOR(数値);
  2. SELECT CEILING(数値);

実行結果は次の通りです。

  1. mysql> SELECT FLOOR(152.55);
  2. +---------------+
  3. | FLOOR(152.55) |
  4. +---------------+
  5. | 152 |
  6. +---------------+
  7. 1 row in set (0.01 sec)
  8.  
  9. mysql> SELECT CEILING(152.55);
  10. +-----------------+
  11. | CEILING(152.55) |
  12. +-----------------+
  13. | 153 |
  14. +-----------------+
  15. 1 row in set (0.00 sec)

また、数値や日付を切り捨てたい場合は TRUNC関数 が使えます。

詳しい使い方については、次の記事で解説しているのでぜひ参考にしてみてください。

【関連記事】

▶︎SQLのTRUNC関数で数値や日付、時間を切り捨てる方法を教えます!

まとめ

SQLで数値を四捨五入する方法について解説しました。

数値を四捨五入をしたい場合は、ROUND関数を使いましょう。

第二引数に四捨五入したい桁数を指定することで、任意の値を取得可能です。

また、四捨五入と合わせて切り捨て・切り上げの方法も覚えておくと便利でしょう。

ぜひこの記事を参考に使い方をしっかり覚えてください!

SQLを学んでWebエンジニアを目指そう

Webエンジニアは、Webサービスを作るエンジニアで非常に人気の高い職種です。
スタートアップやベンチャー企業が中心なので柔軟性のある雇用形態、魅力的な作業環境、面白いプロジェクト、高い報酬など非常に魅力的な求人が多いです。
Ruby on RailsやGo言語を用いたプロジェクトが多く、SQLも重要なスキルとなります。

このブログを運営するプログラミングスクールのポテパンキャンプでは、実践的なカリキュラムと現役エンジニアからのレビュー、そしてポートフォリオ添削や模擬面談などの面談転職サポートにより、最短距離でWebエンジニアを目指すことができます。

Webエンジニアへの転職を考えている方は、是非一度無料カウンセリングへお申込みください。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。