プログラミングマガジン

プログラミングを中心にIT技術をできるだけわかりやすくまとめます。

  • ホーム
  • SQL
  • 【SQL】関数一覧
 
 
     
  • サーバー言語  
    • Python
    • Ruby
    • PHP
    • SQL
  •  
  • インフラ  
       
    • AWS
    •  
    • 基本
    • Git
  • Web
       
    • Web開発
    • JavaScript
    • Vue.js
    • React
  •  
  • 設計  
       
    • 実装設計
    • DB設計
  • 問い合わせ
  

【SQL】関数一覧

06.21

  • miyabisan2
  • コメントを書く

この記事は2分で読めます

SQLの関数は大きく下記の種類に分かれます。

  • 算術関数(数値計算のための関数)
  • 文字列関数(文字列操作のための関数)
  • 日付関数(日付操作のための関数)
  • 変換関数(データ型や、値を変換するための関数)
  • 集約関数(データ集計のための関数)

算術関数(数値計算のための関数)

MOD関数

余りを求める関数

ROUND関数

四捨五入する関数

日付関数(日付操作のための関数)

CURRENT_DATE

現在の日付を取得する。

文字列関数

テストデータ

USER_ID DEPT_NO USER_NAME
21 1002 小泉 純子
22 1003 小泉 三郎
23 1004 小泉 花子
20 1001 小泉 純一

文字列関数(文字列操作のための関数)

「||」(SQLServerとMySQLでは使えない。)

文字列を連結する関数です。

SQL

1
select 'ユーザーID' || DEPT_NO || 'は' || USER_NAME || 'です。' AS INSTRODUCTION from user_master

実行結果

LENGTH(SQLServerでは使えない。)

文字列長を求める関数

LOWER

小文字化させる。

UPPER

大文字化させる。

REPLACE

文字列置換する。

SUBSTRING

文字列から、特定の文字を切り出す。

変換関数(データ型や値を変換するための関数)

COALESCE関数

NULL値を値へ変換する。

NVL関数(Oracleのみ)

NULLの値を別の値に置き換えることができます。

1
SELECT NVL(NAME,'名前なし') FROM ITEM

DECODE関数(Oracleのみ)

NULLか、NULL以外かで値を変更できます。

1
2
SELECT DECODE(NAME,NULL,'名前登録あり','名前登録なし')
FROM ITEM

CASE文を使う場合とそれほど実行速度は変わらないので使い分けはお好みのようですが、DECODE関数は、Oracleでしか使えず汎用性が低いので、汎用性を考慮するとCASE式を使った方が良いとも言われています。

集約関数(データの集約を行うことができる関数)

COUNT関数

テーブルのレコード数を数える。

SUM関数

テーブルの数値列のデータを合計する。

AVG関数

テーブルの数値列のデータを平均する。

MAX関数

テーブルの任意の列の最大値を求める。

MIN関数

テーブルの任意の列の最小値を求める。

重複値を除外して集約関数を使うには?

集約関数では、集約関数の引数に「DISTINCTキーワード」を使用して、重複値を除外して実行することもできます。

1
SELECT COUNT(DISTINCT NAME) FROM ITEM;

その際は、必ずカッコ内に記述するようにしましょう。

集約関数を書くことができる句は?

集計関数を書くことができるのは、下記の三つです。

  • SELECT句
  • HAVING句
  • ORDER BY句
スポンサーリンク
  • 2018 06.21
  • miyabisan2
  • コメントを書く
  • SQL
  • Tweets Twitter
  • このエントリーをはてなブックマークに追加
  • LINEで送る

関連記事

  1. 2018 05.21

    【PL/SQL】繰り返し制御

  2. 2018 04.30

    【システム開発】チューニングの基礎知識

  3. 2018 05.20

    【PL/SQL】Hello Worldプログラムを作成する。

  4. 2018 05.20

    【PL/SQL】「変数」や「固定値」の使い方

  5. 2018 05.03

    【SQL】ヒント句について

  6. 2018 06.21

    【SQL】2つのテーブル間で値が一致するデータのみ抽出する。(INとEXISTS)

  • コメント ( 0 )
  • トラックバック ( 0 )
  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

返信をキャンセルする。

【SQL】SELECT文の評価順

【SQL】2つのテーブル間で値が一致するデータのみ抽出…

RETURN TOP

著者プロフィール

エンジニア歴10年で過去に業務系、Webデザイン、インフラ系なども経験あります。現在はWeb系でフロントエンド開発中心です。

詳細なプロフィールはこちら

スポンサーリンク

カテゴリー

  • Android
  • AngularJS
  • API
  • AWS
  • C++
  • CSS
  • cursor
  • C言語
  • DDD
  • DevOps
  • Django
  • Docker
  • Figma
  • Git
  • GitLab
  • GraphQL
  • gRPC
  • Hasura
  • Java
  • JavaScript
  • Kubernetes
  • Laravel
  • linux
  • MySQL
  • Next.js
  • nginx
  • Node.js
  • NoSQL
  • Nuxt.js
  • Oracle
  • PHP
  • Python
  • React
  • Redux
  • Rspec
  • Ruby
  • Ruby on Rails
  • Sass
  • Spring Framework
  • SQL
  • TypeScript
  • Unity
  • Vue.js
  • Webサービス開発
  • Webデザイン
  • Web技術
  • インフラ
  • オブジェクト指向
  • システム開発
  • セキュリティ
  • その他
  • データベース
  • デザインパターン
  • テスト
  • ネットワーク
  • プログラミング全般
  • マイクロサービス
  • マイクロソフト系技術
  • マルチメディア
  • リファクタリング
  • 副業
  • 未分類
  • 業務知識
  • 生成AI
  • 設計
  • 関数型言語
RETURN TOP

Copyright ©  プログラミングマガジン | プライバシーポリシー