T-SQL
昔書いたブログを読んでいた。 mrgchr.hatenablog.com SQL SERVER(T-SQL)では、下記のように文字列結合でクオートするのではなく、 SELECT @sql_command_pivot_list = STRING_AGG('[' + s.Item + ']', ',') QUOTENAME関数を利用する方が、見た目にも意味的に…
SQL Serverの動的ビューは非常に多くの情報を提供してくれますが、如何せん数が多くその全部を全て覚えるのは現実的ではありません。 時々使うクエリを備忘録としてまとめます。 基本的にはどこで拾ったものですが、どこで拾ったかは記録していないので出典…
ご存じの通り、SQLにおいてはSELECT句などでの末尾のカンマはエラーとなります。 SELECT Col1, Col2, Col3, --Error! 末尾のカンマはダメ FROM YourTable 普通のSQLを書いている分には気を付ければ良いだけではあるのですが、ストアドプロシージャなどで動的…
SQL Serverにて、断片化したインデックスのみを再構築(Rebuild)や再構成(Reorganize)する必要があり、その時使ったストアドプロシージャの備忘録です。
凸包よ、こんにちは Geographyで遊んでいたら凸包(ConvexHull)を簡単に求めることが出来ることを知りました。 STConvexHull (geography データ型) - SQL Server | Microsoft Docs 凸包とは、「与えられた集合を含む最小の凸集合」のことで、「集合を輪ゴムで…
前回: mrgchr.hatenablog.com
SQL Serverは空間データ型をサポートしており、主に平面を扱うgeometry型、GPSの緯度経度座標を扱うgeography型があります。 一見すごく取っ付きにくそうなのですが、Geography型を使ってみたら非常に楽しかったので備忘録です。 docs.microsoft.com
昨日の記事では、月毎のデータをクロス表に変換しました。 mrgchr.hatenablog.com SQLでは「日毎」のデータを「月毎」に変換する、というのもよくあるシナリオなので書いておきます。
こういう感じ↓のいわゆる「縦持ち」のデータを こういう感じ↓のいわゆる「横持ち」(クロス表、ピボットテーブル)表示したいという需要は多くあります。 ExcelやBIツールなどを使えばドラッグアンドドロップでほーいっと簡単にできますが、SQLServer単体でや…
SQL Server 2016 SP1 にて導入されていた(らしい)、CREATE OR ALTER についての備忘録です。
SQLにて連番を生成するという需要は時々あり、私の場合はテストデータやダミーデータの生成に用いることが多いです。
マイクロソフト認定資格試験(MCP) 70-464(Developing Microsoft SQL Server Databases )を受験して、合格しました。 試験 70-464: Microsoft SQL Server 2012 のデータベースの開発 前回: mrgchr.hatenablog.com 前々回: mrgchr.hatenablog.com
マイクロソフト認定資格試験(MCP) 70-762(Developing SQL Databases)を受験して、合格しました。 Exam 70-762: Developing SQL Databases 前回: mrgchr.hatenablog.com
マイクロソフト認定資格試験(MCP) 70-761(Transact-SQL によるデータのクエリ)を受験して、合格しました。 Exam 70-761: Querying Data with Transact-SQL
前回までのあらすじ Dapperにてユーザー定義テーブル型をストアドプロシージャのパラメータとして利用する方法を検討した。 mrgchr.hatenablog.com 今回はそれらの速度比較をします。
良かれと思ってやったのですが 今までComputed Columnの例ではロジックを分ける意味で、ユーザー定義関数を用いていました。 mrgchr.hatenablog.com
何故これがダメなのかが分からない 先日の消費税計算のComputed Columnを、Persisted指定したら何故かエラーになりました。 テーブル 'Orders' の計算列 'SalesTax' を保存できません。この列は不明確です。 これを解決します。
ので、Viewを使おう タイトルそのまんまなのですが、SQL ServerのComputed Columnの計算結果は別のComputed Columnで参照するとエラーになります。
本当に速いのか 前回の記事で、SQL ServerのComputed Columnについて、「Persisted Computed Columnの方が当然Selectは速くなる」と書きましたが、Webの情報を鵜呑みにして書いただけで未検証でした。 mrgchr.hatenablog.com というわけで確認してみました。
Computed Column(計算列)について調べました。 Computed Column(計算列)は、SQLServerにて利用できる、テーブルの他の列のデータを元に値を計算する仮想列です。 たとえば、下記のテーブル定義では、FullName列が計算列となります。 CREATE TABLE [dbo].[Acc…
昨日のページング処理のSQLを別の書式で書いてみます。 mrgchr.hatenablog.com