SQL一覧

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

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

記事を読む

データベースのオブジェクトからエンティティクラスのコードを自動生成する [C#, SQLServer]

データベースのテーブルやビューなどデータをマッピングするエンティティクラスは、O/Rマッパーを使用してデータベースのデータを操作するアプリケ...

記事を読む

SQL CLR関数で全角と半角、ひらがなとカタカナの変換 [SQLServer]

SQLServerで全角文字と半角文字を相互変換する処理と、ひらがなとカタカナを相互変換する処理を行う関数を作成します。 SQLS...

記事を読む

SQLで文字列の全角と半角を変換(置換)する [SQLServer]

SQLServerには半角文字を全角文字に変換したり、全角文字を半角に変換してくれる関数がありません。 そこで、SQLで全角を...

記事を読む

SQLServerのCLR統合を使用してCLR関数を作成する

SQL Server 2005から提供されている.NET Frameworkの共通言語ランタイム(CLR: Common Langu...

記事を読む

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

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

記事を読む

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

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

記事を読む

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

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

記事を読む

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

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

記事を読む

SQLServerのMERGEでINSERT/UPDATE/DELETEを1回のSQLで実行する

あるテーブルやビューに既に対象のレコードが存在している場合はUPDATE(更新)し、存在していない場合はINSERT(挿入)する。 データ...

記事を読む

SQLで元号と和暦日付を取得する [SQLServer]

SQLで和暦の元号と日付を取得するサンプルです。 元号を取得する 元号はSQLServerの標準機能(関数など)で取得することはでき...

記事を読む

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

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

記事を読む

SELECT INTOでテーブルのデータを複製する [SQLServer]

プログラムの登録、更新、削除のテストをしていると、操作対象のテーブルのデータを一旦退避させたり、テスト用に本番データベースのテーブルをコピー...

記事を読む

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

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

記事を読む

SQLServerでboolean型(True/Falseの真偽値)を扱うbit型

SQLServerで真偽値を扱うためのデータ型について紹介します。 SQLServerにはtrueまたはfalseの真偽値を保持するた...

記事を読む