カテゴリー:データベース

  • 2017.11.27
  • ,

[MySQL]GROUP_CONCATで縦のデータをカンマ区切りで取得

複数レコードのデータを連結して取得したい MySQL(MariaDB)で、GROUP_CONCAT を使って、縦に並んだ複数レコードのデータを1列(カンマ区切り)で取得するSQLを書く方法をまとめます。 SQL Serverでは、FOR XML PATH('') を使用して取得できます。 [SQL Server] 縦に並んだデータを横にカンマ区切りの列データで取得する方法 上記記事では SQL S […]

[SQL Server] 縦に並んだデータを横にカンマ区切りの列データで取得する方法

縦に複数のデータを横並びで取得したい 縦にたくさん並んだデータについて、横に並べて一つの可カンマ区切りの列データとして取得したい場合があったのでその方法をまとめます。 RMDBは SQL Server です。FOR XML PATH('') を使って実現します。 例えば、部署と社員の関係を以下のようなリレーションで表現します。 部署マスタと社員マスタがあり、社員マスタには所属部署を表す部署IDを保 […]

[MS SQL] Insertしたデータの ID(IDENTITY) を取得する方法

Insertしたデータの ID(IDENTITY) を取得する方法     SQL Server では、テーブルの列に対して自動でIDを採番してくれる IDENTITY というプロパティがあります。このプロパティが設定されている列については、手動で値を登録することができません。     例えば INSERT 処理後、このIDを使って関連するテーブルへデータを続けて登録したい場合は、以下のように(S […]

SQL

[SQL] 再帰クエリでツリー(木)構造を扱う

SQLにおける再帰的な処理 リレーショナルデータベース(RDB)には、階層的なデータ構造(例:ツリー構造など)を扱うことができる、再帰クエリをサポートしているものがあります。再帰クエリを使の使い方を以下に紹介します。 再帰クエリをサポートするRDB Wikipediaによると以下のRDB(バージョンによっては利用不可)は再帰クエリを使えるようです。今回は以下のうち、SQLServer と SQLi […]

SQL Server Expressで自動バックアップを作成する方法

SQLServer Expressで自動バックアップの取り方 小規模のWebアプリであれば、SQL Server Expressで事足りることも多く利用されている方も多いと思います。 しかしSQL Server Expressには製品版と比べ、いくつかの機能の制限がかけられています。 メンテナンスプランによる自動バックアップ機能もそのうちの一つです。 勿論手動でのバックアップはできますが、SQL […]