回答編集履歴

2

追記

2021/03/02 12:26

投稿

sazi
sazi

スコア25188

test CHANGED
@@ -9,3 +9,19 @@
9
9
  ```
10
10
 
11
11
  但し、値がNullのケースがあり、結果もNullとしたい場合にはNull判定が必要になります。
12
+
13
+
14
+
15
+ 追記
16
+
17
+ --
18
+
19
+ case 部分を文字列として確定させれば,`+`演算子でも大丈夫ですね。
20
+
21
+ ※Nullも問題なし。
22
+
23
+ ```SQL
24
+
25
+ case sign(num) when 1 then '+' else '' end + CONVERT(VARCHAR(2),Num)
26
+
27
+ ```

1

追記

2021/03/02 12:26

投稿

sazi
sazi

スコア25188

test CHANGED
@@ -4,6 +4,8 @@
4
4
 
5
5
  ```SQL
6
6
 
7
- concat(case sign(num) when 1 then '+' else '' end, num)
7
+ concat(case sign(num) when 1 then '+' end, num)
8
8
 
9
9
  ```
10
+
11
+ 但し、値がNullのケースがあり、結果もNullとしたい場合にはNull判定が必要になります。