SQL Server 2005SQLServerで、バックアップ先のアーカイブテーブルにあって、本テーブルに無いデータを抽出するSQL 複数列をキーにしている場合、IN()は使えないのでexistsを使う。 where not exists ()の中で「SELECT *」を指定していますがあまり意味はなく、アーカイブテーブルと本テーブルのテーブル定義が違っていてもexis... 2016.02.13SQL Server 2005
SQL Server 2005データの上昇角度を求めるSQL ビッグデータシステムなど、大量のデータを解析する場合、JAVAやC#では計算元のデータを読込むだけで膨大な時間がかかってしまうので、最近では数十テラのデータであってもDBにインポートしてから、SQLで分析するのが主流になっています。以下は、... 2015.09.23SQL Server 2005
SQL Server 2005SQLServer で統計情報を固定する DB処理で最適なインデックスが使われないという、Oracle DBでよく問題になるDBチューニングテーマ。 統計情報を固定することで解決する手法は、SQLServer ではできないと思い込んでいましたが、SQLServer にもありました、... 2014.09.20SQL Server 2005
SQL Server 2005SQLServer のトランザクションログは肥大化する SQLServerのトランザクションログは、使われていない領域をうまく再利用してくれないのか、SQLServer 2008、SQLServer 2012 とバージョンを問わず、徐々に、どこまでも拡張していきます。 レポート⇒標準レポート⇒デ... 2014.03.23SQL Server 2005
SQL Server 2005SQLServerは、断片化率が高くなると、SQLが実行される際、パラレル処理されなくなり、極端に処理性能が低下します ストレージを増設する前、12TBのストレージで、10TBのDBを運用していたので、1ヵ月に1回程度、SQLServerのDB Shrinkを実行していました。その影響で、メインのテーブルとインデックスを中心に、断片化率が99%に達していまし... 2013.05.05SQL Server 2005
SQL Server 2005SQLServerで、SQLがパラレル処理されない場合は、実行プランを丸ごと固定する SQLServerは、SQL処理時間がcost threshold for parallelismの値(デフォルト5秒)を超えるような場合、1つのSelect文であっても、シリアルではなくパラレルで処理します。パラレル処理されれば1分程度で... 2013.05.03SQL Server 2005
SQL Server 2005SQLServer トレースフラグの有効性 DBサイズがテラバイトを超えて来ると、DB全体の統計情報を更新するだけで、1日以上かかってしまい、定期的な統計情報の更新を諦めていましたが、統計情報が更新されない事で、特定のSQLが極端に遅くなる現象が発生しました。 SQLを分解し、極端に... 2013.03.17SQL Server 2005
SQL Server 2005SQLServerで、ジョブ名からジョブを削除するSQL SQLServer Management Studio から、SQL Server Agent に作成したジョブを右クリックし、「DROP To」でDROP文を生成すると、JOB ID を元にしたDROP文が生成されますが、JO... 2013.03.16SQL Server 2005
SQL Server 2005SQLServerの最新パッチ SQLServer 2008 R2 SP2 の最新パッチがどれなのかは、このブログで確認できる。2013/2/24時点の最新パッチ(累計的な更新プログラム)はCU#5。 SQL Release Services Blog 2013.02.24SQL Server 2005
SQL Server 2005SQLServer で TO_CHAR と同じことをするには SQLServer で TO_CHAR と同じことをするには、CONVERTを使います。 int型の「販売金額」を、小数点付きの文字列で返す場合に、CONVERTを使うと以下のようになります。 SELECT CONVERT(VARCHA... 2010.06.17SQL Server 2005