あじちゃんのブログ。備忘録。

〜SEもOLなんですかね?

SQLServerで改行を入れる

ManagementStudio2008では改行をこぴぺで入れたりCtr+Enterで入れることが出来ない。 (2016からプロパティの設定でできるらしい・・・)
文字列挿入の際に、シングルコート内で改行をがつがつ入れるのは

  • 可読性を損なう
  • つかっている改行コードがデータによって変わってしまう

場合があるため出来るだけ避けたいところ。
そのようなときにCHAR関数を用いると良い。

CHAR関数で制御文字を挿入する

よく使われる制御文字

  • CHAR(9) - タブ
  • CHAR(10) - ラインフィード (LF)
  • CHAR(13) - キャリッジリターン (CR)

Windows 系はキャリッジリターン (CR) + ラインフィード (LF)、Unix 系はラインフィード (LF)
 SQL Server Management Studio では、どれを使っても改行が挿入される。

SELECT  '午後の紅茶' + CHAR(9)  +            'おいしい無糖' AS 'TAB';
SELECT  '午後の紅茶' + CHAR(10) +            'おいしい無糖' AS 'LF';
SELECT  '午後の紅茶' + CHAR(13) +            'おいしい無糖' AS 'CR';
SELECT  '午後の紅茶' + CHAR(13) + CHAR(10) + 'おいしい無糖' AS 'CR+LF';

f:id:azix:20180424161515p:plain

注意

テキスト表示した結果をこぴぺすると、改行コードの種類によっては各種テキストエディタで改行されないこともあります・・・
Windowsのメモ帳とか。