SQL Server GROUP BYとHAVINGを使ってデータの重複を探しだすSQL SQLでGROUP BYとHAVINGを使ってデータの重複を探して見ます。 2021.03.04 SQL Server
SQL Server SQLServerのテーブルロック状態を取得するSQL SQLServerのデッドロックを調査している中でロックの状態を調べるSQLがあることが判明したのでメモします。 2019.12.09 SQL Server
SQL Server SQLServerのバージョン番号を取得する方法 SQLServerのバージョン番号は「@@VERSION」を使用することで確認できます。 2019.12.09 SQL Server
SQL Server @@ROWCOUNTで処理した件数を取得する SQLServerでは実行したSQLで影響を与えた処理件数を@@ROWCOUNTを使用することで取得できます。 2019.12.09 SQL Server
SQL Server テーブルから列を削除する「ALTER TABLE テーブル名 DROP COLUMN 削除する列名」 既存のテーブルで不要になった列を削除する方法です。列を削除するには「ALTER TABLE」を使って削除します。 2019.12.09 SQL Server
SQL Server SQLServerのテーブルやカラムにコメントをつける方法 SQLServerで作成したテーブルやカラムにコメントをつけれないか調べたところ、sys.sp_addextendedpropertyを使えばコメントをつけれます。 2022.02.02 SQL Server
SQL Server テーブル型を戻り値とする関数の作成方法 SQLServerではINT型やVARCHAR型などを返す関数と同様にユーザー定義テーブル型を戻り値とする関数を作成できます。方法は「RETURNS」にテーブル型を指定します。 2019.12.09 SQL Server
SQL Server SQLServerでクライアントのIPアドレスを取得する sys.dm_exec_connectionsを利用すると、SQLを発行したクライアントのIPアドレスを取得できます。無理かと思っていましたが、可能でした。 2019.12.09 SQL Server
SQL Server SQLで順位を取得するRANK()とDENSE_RANK() SQLServerで順位を取得するRANK()とDENSE_RANK()を利用して項目の順位を取得します順位をします。 2019.12.09 SQL Server
SQL Server SQLで改行コードを含む項目を取得する Microsoft SQL Server Managemnet Studioで検索SQLを実行すると結果ペインに結果が表示されまが、改行を含む項目も1行のデータとして表示され見にくいので、改行もそのまま表示できないかと調べました。 2019.12.09 SQL Server
SQL Server SQLServerでのInsert,Update,Deleteトリガーの使い方 SQLServerにはテーブルに対してInsert,Update,Deleteに実行される「トリガー」を設定することができ、テーブルに挿入、更新、削除されるごとにそれらの処理を呼び出すことが可能です。 2019.12.09 SQL Server
SQL Server SELECTした結果をランダムに並び変える SQLServerでSELECTした結果をランダムに並び変えるにはORDER BYにNewID()関数の値を使います。 2019.12.09 SQL Server
SQL Server ユーザー定義テーブル型変数を使用する SQLServer 2008には、テーブル構造の定義を表す「ユーザー定義テーブル型」というものがあります。これを利用すると独自のテーブル型を作成できます。 2019.12.09 SQL Server
SQL Server SQLServerで春分の日と秋分の日をSQLで求める計算式 春分の日と秋分の日は毎年違うので計算で春分の日と秋分の日をSQLで求めてみます。 2019.12.09 SQL Server
SQL Server SQLServerのMERGEでINSERTとUPDATEを1行で実行する SQLServerのMERGE文を利用すると、指定した条件に応じて挿入(INSERT)、更新(UPDATE)、削除(DELETE)を実行することが1行のSQLで可能です。 2021.07.27 SQL Server
SQL Server DATETIMEデータ型のミリ秒丸め現象の対応方法 DATETIMEデータ型のミリ秒には精度によって丸めがあり、利用する場合には注意が必要です。000、.003、.007 以外の値は .000、.003、.007 に丸められます。 2020.10.07 SQL Server
SQL Server SQLServerでカンマ区切り (CSV) で文字列取得 Where句のINにSQLで取得した結果を直接利用したりするのに、SQLServerで複数件存在するデータを1行のカンマ区切りのデータとして取得して見ます。 2019.12.09 SQL Server
SQL Server ORDER BYでNULLのカラムをASCでソートした時に最後に表示する方法 SQLServerで何も考慮せずに「ORDER BY」するとNULLのカラムは最後に表示されます。CASE WHENを利用してそれを回避します。 2019.11.14 SQL Server
SQL Server NULLの検索はIS NULL演算子を使う SQLでNULLのカラムを含む行を検索するには「WHERE カラム名=NULL」ではなく「WHERE カラム名 IS NULL」を使います。「WHERE カラム名=NULL」では検索できません。 2021.03.04 SQL Server
SQL Server SQLServerでダミーテーブルを使ってみる SQLServerで実際に存在するテーブルからではなく架空(ダミー)のテーブルに対してSELECTを発行することができます。このようなSQLは現在時刻を取得するときなどに便利な方法です。Oracleで現在日付けなどを取得する際に利用するダミーテーブルは「DUAL]ですが、SQLserverの場合はこれに対応するテーブルはありません。 2019.12.09 SQL Server
SQL Server SQLで月曜日始まりのカレンダー作成 SQLをうまく利用するとカレンダーを作成することができます。今回はSQL Serverで月曜日始まりの1週間分のカレンダーを作成します。 2019.12.09 SQL Server
SQL Server SQLServerでTrue,FalseのようなBoolean型をあつかう SQLServerには「Boolean」という型はありません。Boolean型のような「true」、「false」をあつかうには「bit型」を利用します。 2019.12.09 SQL Server
SQL Server SQLServerでテーブルの存在を確認する SQLServerでは「dbo.sysobjects」から「id」を検索することにより、そのテーブルが存在するかどうか確認することができます。 2019.12.09 SQL Server
SQL Server テーブルにユニークインデックス(UNIQUE INDEX)を作成する テーブルにユニークインデックス(UNIQUE INDEX)を作成する方法です。またユニークインデックス(UNIQUE INDEX)とプライマリーキーとの違いを書いています。 2019.12.09 SQL Server
SQL Server SQLServerでIDENTITYを使って自動で連番を設定する SQLServerでカラムに自動で連番を設定するにはカラムの属性に「IDENTITY」を指定します。 2020.09.23 SQL Server
SQL Server 「INNER JOIN」「LEFT OUTER JOIN」「RIGHT OUTER JOIN」「FULL OUTER JOIN」についてまとめ SQLでよく使う「INNER JOIN」「LEFT OUTER JOIN」「RIGHT OUTER JOIN」「FULL OUTER JOIN」についてのまとめです。 2019.12.09 SQL Server
SQL Server CASE WHEN を使って条件ごとの件数を取得する あるテーブルに状態を表すフラグを持たせることはよくあります。その状態を条件ごとに振り分けて件数をそれぞれの件数を取得します。 2021.03.04 SQL Server
SQL Server 集計関数COUNT()でのNULLの扱い 集計関数のCOUNT()は条件にマッチするレコードの件数を数えるのに使われます。注意が必要なのはNULLを含む項目とNULLを含まない項目では動作が異なります。 2021.03.04 SQL Server
SQL Server GROUP BYとHAVINGで最新日付データを取得する 社員マスタなどで最新のレコードのみをSQLで取得して利用するような場面はよくあるかと思います。そこでSQLを使って最新日付データを取得します。 2021.03.04 SQL Server
SQL Server SQLServerでDEFAULT制約付きのカラムの属性を変更する SQLServerでDEFAULT制約付きのカラムの属性を変更する場合は、一旦付与されている制約を外してから変更しなければエラーになります。 2019.12.09 SQL Server
SQL Server SQLServerで列は既にデフォルトにバインドされています。と言われた場合の対処 SQLServerでテーブルのカラムの属性変更でデフォルト値を変更しようとすると列は既にデフォルトにバインドされています。というエラーになりました。 2019.12.09 SQL Server
SQL Server SQL_VARIANT_PROPERTYを使ってカラムの基本データ型を取得する SQLServerのSQL_VARIANT_PROPERTYを使ってカラムの基本データ型を取得します 2019.12.09 SQL Server
SQL Server ISNULLとCOALESCEは動作が異なる SQLServerのISNULLとCOALESCEは微妙に動作が異なるので注意が必要です。 2019.12.09 SQL Server
SQL Server CASE WHENを使ってSQLでIF文を使わずに条件を分岐する CASE WHENを使ってSQLでIF文を使わずに条件を分岐します。複数おなじSQLを書く必要がないのでメンテナンスもやりやすくなります。 2021.03.04 SQL Server