SQL Server SQLServerのCASE WHENを使って年月ごとのデータを取得する SQLServerのCASE WHENを使って年月ごとのデータを取得するには該当年月を100で割った余りでデータを振り分けます。 2020.11.05 SQL Server
SQL Server SQLServerの副問合せを使ってテーブルの変りをする SQLの副問い合わせ(サブクエリ)とは、SELECTした結果を別のSQLで使うことを言います。今回は副問合せ(サブクエリ)を使ってテーブルの変りを実現してみます。 2020.11.05 SQL Server
SQL Server 直前のINSERTで自動採番したIDENTITY列の値を取得する SQLServerのIDENTITY属性の列をテーブルにデータをINSERTし、その挿入された値を直前に挿入された値を取得するには「@@IDENTITY」を利用すれば取得できます。 2020.10.14 SQL Server
SQL Server SELECTで別名・エイリアスが使えるかはSQL実行順序で決まる SELECT文の中で別名(エイリアス)が使える、使えないは、それぞれの句のSQL実行順序で決まります。SQLServerの実行順序はFROM、ON、JOIN、WHERE、GROUP BY、WITH CUBE または WITH ROLLUP、HAVING、SELECT、DISTINCT、ORDER BY、TOPの順です。 2020.10.13 2020.10.29 SQL Server
SQLite SQLite3でテーブル存在チェックを行う方法 SQLite3でテーブル存在チェックを行うにはsqlite_master を指定したテーブル名で検索するとわかります。その具体的なSQLを解説します。 2020.01.29 SQLite
SQL Server SQLの基本-INSERT,UPDATE,SELECT,DELETE- アプリケーションでSQLを利用してデータベースのデータを扱う上で重要な構文が「INSERT,UPDATE,SELECT,DELETE」の4つです。その基本を解説します。 2020.01.15 2020.01.29 SQL Server
MySQL MySQLでカラムの値がNULLかどうか判定するにはIFNULLを利用する MySQLでカラムの値がNULLかどうか判定するには「IFNULL」関数を利用します。 2019.08.28 2020.01.29 MySQL
MySQL MySQLで当月のカレンダーを作成する方法 MySQLで当月のカレンダーを作成するSQLです。当月の末日を求めて、それを利用してカレンダーを作成します。 2019.08.28 2019.11.11 MySQL
SQL Server SQLServerでカーソルを使う方法 SQLServerにはCURSOR型」が用意されています。「CURSOR型」の使い方を解説します。 2018.10.01 2019.11.11 SQL Server
SQL Server SQLServerで断片化したインデックスを再構築する方法 SQLServerでインデックスを再構築すると断片化したインデックスが解消され、処理スピードが速くなることがあります。断片化したインデックスを再構築しインデックスるの断片化を解消する方法です。 2018.01.11 2020.10.27 SQL Server
SQL Server SQLで検索結果を縦横変換する SQLで取得した各行を一定のくくりで横に表示させたいときがあります。そんなときはSQLで縦横変換を行います。 2015.06.10 2019.11.19 SQL Server
SQL Server SQLServerではTRIM関数がありません SQLServerではOracleやMySQLなどでサポートされている空白を取り除くTRIM関数がないので、カラムの前後の空白を取り除くにはLTRIM関数とRTRIM関数を組み合わせて実現します。※SQLServer 2017でTRIM関数が追加されました。 2015.05.09 2020.11.05 SQL Server
SQL Server SQLで存在しない行を生成し固定行数で処理したい時に役立つ方法 帳票データなどで登録されているデータ数に左右されず、固定行数でデータを取得したい場合があります。キー内で複数行のデータを管理しているデータから固定の行数分情報を作り出して取得するSQLです。 2015.01.15 2019.11.19 SQL Server
SQL Server SQLServerで「WITH ROLLUP」を使って小計、総合計を出力する SQLServerでは「WITH ROLLUP」を利用すると簡単に小計、総合計を出力することができます。そのサンプルです。 2014.11.05 2019.11.19 SQL Server
SQL Server SQLServerのテーブルに設定されているインデックスをSQLで検索する SQLServerでテーブルに設定されているインデックスを検索するにはsys.indexesから情報をSelectします。 2014.09.30 2019.12.06 SQL Server
SQL Server 指定した列名がどのテーブルで使用されているか検索するSQL 指定した列名がどのテーブルで使用されているか検索するSQLです。列名の変更や型の整合性などを見る時にすべてのテーブルから列名を探しだすと楽にチェックすることができます。 2014.08.20 2019.12.06 SQL Server
SQL Server SQLで大文字、小文字変換を行う SQLで大文字⇔小文字変換を行うには「UPPER関数」と「LOWER関数」を利用します。「UPPER関数」と「LOWER関数」の利用方法を解説します。 2014.06.26 2019.12.09 SQL Server
SQL Server SQLServerで文字列を反転させるREVERSE関数 SQLServerで文字列を"012345"を後ろから並び変えて"543210"のように反転させるにはREVERSE関数を利用します。REVERSE関数の利用法を解説します。 2014.06.26 2019.12.13 SQL Server
SQL Server GROUP BYとHAVINGを使ってデータの重複を探しだすSQL SQLでGROUP BYとHAVINGを使ってデータの重複を探して見ます。 2014.04.09 2019.12.11 SQL Server
SQL Server SQLServerのテーブルロック状態を取得するSQL SQLServerのデッドロックを調査している中でロックの状態を調べるSQLがあることが判明したのでメモします。 2014.04.08 2019.12.09 SQL Server
SQL Server SQLServerで春分の日と秋分の日をSQLで求める計算式 春分の日と秋分の日は毎年違うので計算で春分の日と秋分の日をSQLで求めてみます。 2013.12.19 2019.12.09 SQL Server
SQL Server 指定された月の日数をSQLで求める SQLで指定された月の日数を計算する処理です。「9999/12」以外はきちんと計算できます。 2013.12.02 2019.12.09 SQL Server
SQL Server NULLの検索はIS NULL演算子を使う SQLでNULLのカラムを含む行を検索するには「WHERE カラム名=NULL」ではなく「WHERE カラム名 IS NULL」を使います。「WHERE カラム名=NULL」では検索できません。 2013.09.17 2019.12.09 SQL Server
SQL Server SQLServerでテーブルの存在を確認する SQLServerでは「dbo.sysobjects」から「id」を検索することにより、そのテーブルが存在するかどうか確認することができます。 2013.07.31 2019.12.09 SQL Server
SQL Server CASE WHEN を使って条件ごとの件数を取得する あるテーブルに状態を表すフラグを持たせることはよくあります。その状態を条件ごとに振り分けて件数をそれぞれの件数を取得します。 2013.06.13 2019.12.09 SQL Server
SQL Server 集計関数COUNT()でのNULLの扱い 集計関数のCOUNT()は条件にマッチするレコードの件数を数えるのに使われます。注意が必要なのはNULLを含む項目とNULLを含まない項目では動作が異なります。 2013.06.11 2019.12.09 SQL Server
SQL Server GROUP BYとHAVINGで最新日付データを取得する 社員マスタなどで最新のレコードのみをSQLで取得して利用するような場面はよくあるかと思います。そこでSQLを使って最新日付データを取得します。 2013.06.10 2019.12.09 SQL Server
SQL Server SQLServerでDEFAULT制約付きのカラムの属性を変更する SQLServerでDEFAULT制約付きのカラムの属性を変更する場合は、一旦付与されている制約を外してから変更しなければエラーになります。 2013.06.05 2019.12.09 SQL Server
SQL Server CASE WHENを使ってSQLでIF文を使わずに条件を分岐する CASE WHENを使ってSQLでIF文を使わずに条件を分岐します。複数おなじSQLを書く必要がないのでメンテナンスもやりやすくなります。 2013.05.11 2019.12.09 SQL Server
SQL Server ISNULL()関数を使ってSQLでIF文を使わずに条件を分岐する ISNULL()関数を使ってSQLでIF文を使わずに条件を分岐させます。一部が違うだけで同じようなSQLを複数回書かなくてよいのでメンテナンス性もよいかと思います。 2013.05.10 2019.12.09 SQL Server
SQL Server SQLServerの再帰SQLで最大再帰数の指定 再帰SQLで「ステートメントが終了しました。ステートメントの完了前に最大再帰数 100 に達しました。」が発生しました。どうやら最大回数が設定できるようです。 2013.05.08 2019.12.09 SQL Server
SQL Server SQLServerの再帰SQLで歯抜けの日付データを取得する 日付を管理しているテーブルから共通テーブル式と再帰SQLを使って歯抜けの日付データを取得する 2013.05.07 2019.12.09 SQL Server
SQL Server SQLServer上にあるテーブルの更新日時を取得する。 ストアドプロシージャーの更新日時を調べるSQLを見つけましたがtype_descに「'USER_TABLE'」を指定するとテーブルレイアウトの更新日時が取得できます。 2013.04.13 2019.12.09 SQL Server
SQL Server SQLServerで日付の重複をSQLで検索する SQLで開始日付、終了日付の期間の重複を検索する。マスタデータなどの有効期間の重複チェックに使えると思います。 2013.04.05 2019.12.09 SQL Server
SQL Server SQLで指定された年月日の月末日付を取得する SQLserverには指定された年月日の月末日付を取得する関数がないようなので、SQLで指定された年月日の月末日付を取得してみます。 2013.04.02 2019.12.09 SQL Server
SQL Server SQLServerでSQLを使ってテーブルのカラム名(項目名)を取得する SQLServerでSQLを使ってテーブルのカラム名(項目名)を取得する 2013.03.22 2019.12.09 SQL Server
SQL Server 既に存在するテーブルに他のテーブルからデータをINSERTする方法 既に存在するテーブルに他のテーブルからデータをINSERTする方法です。 2013.03.21 2019.12.09 SQL Server
SQL Server SQLで前の行と同じ値は表示しないようにする SQLで前の行と同じ値は表示しないようにする。帳票出力イメージなどで選択したデータの特定のカラムが1つ前の行と同じ値の場合は表示しないと言ったようなことが必要な場合があります。 2013.03.19 2019.12.09 SQL Server