SQL一覧

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

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

記事を読む

SELECT INTOで他のテーブルからデータを複製またはテーブルを作成する [SQLServer]

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

記事を読む

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

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

記事を読む

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

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

記事を読む

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

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

記事を読む

順位のRANK、DENSE_RANK、NTILEと連番のROW_NUMBER [SQLServer]

SQLでデータを取得する際に、例えばセールスマンの売り上げ金額や学生の試験の得点に順位を付けたり、顧客ID順に連番を振りたい時があります。 ...

記事を読む

SQLServerのメッセージ(エラー)を取得する

SQLServerでクエリを実行した際にエラーがあるとエラーメッセージが返されます。 例えば、存在しないテーブルに対してSELECT文を発...

記事を読む

SQLServerのTRIM関数で文字列の左右(前後)の空白文字を削除する

SQLServer 2017でTRIM関数が追加されました。 以前はLTRIM関数とRTRIM関数しかなかったので、文字列の左右(...

記事を読む

省略可能な引数を持つ関数の作成 [SQLServer]

SQLServerではユーザーが定義する独自の関数をデータベース内に作成することができます。 ユーザー定義関数は、値を返すスカラー関数やテ...

記事を読む

省略可能な引数を持つストアドプロシージャの作成 [SQLServer]

ストアド プロシージャの引数は必ず必要とは限りません。 例えば、SQLServerに標準に用意されているストアド プロシージャの中にも、引...

記事を読む

数値を3桁ごとのカンマ区切り表記文字列(9,999)に変換する [SQL Server]

SQLServerでSQLを記述していると、金額などの数値データを金額表記(12,345)にしたい時があります。 取得したデータをプログラ...

記事を読む

ビュー、関数、ストアドプロシージャのSQLを取得するsp_helptext [SQLServer]

データベースに作成済みのビュー、関数、ストアドプロシージャなどのSQLを確認したい場合には、SQL Server Management St...

記事を読む

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

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

記事を読む

ストアドプロシージャ、関数のSQLを取得する [SQLServer]

SQL Server Management Studioのクエリエディターを使用してストアドプロシージャと関数のSQLを取得する方法を紹介し...

記事を読む

エンティティクラスオブジェクトとデータベースのデータのマッピング

DataReaderやDataTableにデータベースから取得したデータを、定義したエンティティクラスのオブジェクトに入れて操作したいことが...

記事を読む