MySQL一覧

マスターテーブルのレコードごとの集計値を取得するSQL

テーブルに登録されている金額などの数値データを、あるマスターテーブルのキー(コードやID)ごとに集計します。 サンプルテーブル...

記事を読む

SQLで標準偏差と偏差値を求める [SQLServer, MySQL] (STDEVP, STDDEV_POP)

学校の成績関連のシステムの開発をしていると、時どき偏差値(へんさち)を求めることがあります。 そこで今回はSQLで偏差値を求めるのに必要な...

記事を読む

SQLでカレンダーを取得する (WITH CTE) [SQLServer, MySQL]

SQLでカレンダーのデータを取得する方法を紹介します。 1か月の日付が7日ごとに改行して表示されるカレンダー形式のデータは、プログラムで作...

記事を読む

SQLでうるう年を判定する [SQLServer, MySQL]

先日2人のプログラマーさんが、それぞれうるう年の判定をSQLで記述していました。 片方のプログラマーさんは、マイクロソフトのドキュメントに...

記事を読む

MySQLのダウンロードとインストール~初期設定(セットアップ)

Windows環境用のMySQL Community Serverをダウンロードしてインストールを行う方法と、インストール完了後に初期設定を...

記事を読む

SQLでRANK関数を使わずにデータに順位を付ける [MySQL]

データベースがSQLServerであればTransact-SQL(T-SQL)にRANK関数が用意されているので、取得するデータに対して簡単...

記事を読む

WITH ROLLUP を使って小計と総合計を取得する [SQLServer, MySQL]

SQLで集計をしていると、GROUP BYでグループ化して集計した明細レコードと一緒に、小計や合計のレコードを取得したい場合があります。 ...

記事を読む

SQLで欠番一覧を取得する [SQLServer, MySQL]

IDや通し番号などの一意になる番号を持つテーブルの登録や削除を繰り返していると、欠番(歯抜けの番号)ができる場合があります。 そんな時に客...

記事を読む

縦持ちのデータを横に展開する(CASE, IIF)[SQLServer, MySQL]

テーブルにレコードとして保存されているデータを取得する際に横に展開して1行にしたい場合があります。 例えば月ごとに登録されている金額データ...

記事を読む

途中の空き番号(欠番)を取得するSQL(SELECT文)

データのIDや番号などの連番を持ったテーブルの登録と削除を繰り返していると、途中に空き番号ができる場合があります。 新たにデータを登録する...

記事を読む

SQLで左0埋めなどのパディングを行う [SQLServer, MySQL]

SQLでパディングを行う方法を紹介します。 パディングを行うと固定長のコード値を持つマスタテーブルのコードの桁数を左0埋めで合わせたり...

記事を読む

SQLで重複しているレコードを全て抽出する (GROUP BY + HAVING)

大量のデータの中からあるキーとなる値が重複するレコードを抽出したい時があります。 例えばキーとなる値が一意になるように作成したつもりのテス...

記事を読む

1回のINSERT(インサートSQL)で複数行のレコードを一括挿入(追加)する

SQLServerやMySQLなどのデータベースで、テーブルにレコードをINSERT文使用して追加するには、通常は以下のように記述します。 ...

記事を読む

MySQL 日付と時刻の関数一覧

MySQL で日付、時刻を操作するための、主な SQL 関数です。 MySQL には SQL Server と同等以上の様々関数が用意...

記事を読む

SQLのCASE演算子で条件の有無を判断して必要な場合のみWHERE句の条件に含める

SQLでテーブルの情報を抽出(SELECT)する際に、特定の場合だけWHERE句で条件を指定したい場合があります。 例えば、抽...

記事を読む