回答編集履歴
2
補足追加
answer
CHANGED
@@ -43,4 +43,26 @@
|
|
43
43
|
|
44
44
|
個人的には食べ物区分は種別ごとに一意に振られ、
|
45
45
|
でもフルーツとお菓子どっちも取ってこないいけないよという要件があるなら、
|
46
|
-
もう一個それを示すフラグとか区分なりを追加する方が後々すっきりするかなとも思ってます。
|
46
|
+
もう一個それを示すフラグとか区分なりを追加する方が後々すっきりするかなとも思ってます。
|
47
|
+
|
48
|
+
###補足
|
49
|
+
CASE式について補足。
|
50
|
+
THEN句の後の値のデータ型が一致することが要求されます。
|
51
|
+
|
52
|
+
以下は文字列の場合
|
53
|
+
```SQL
|
54
|
+
CASE col1
|
55
|
+
WHEN '1' THEN '文字列1'
|
56
|
+
WHEN '2' THEN '文字列2' -- 一つ目文字なら2つ目も文字で統一
|
57
|
+
ELSE NULL -- ただしNULLはOK
|
58
|
+
END
|
59
|
+
```
|
60
|
+
|
61
|
+
以下は数値
|
62
|
+
```SQL
|
63
|
+
CASE col1
|
64
|
+
WHEN '1' THEN 100
|
65
|
+
WHEN '2' THEN 5 -- 一つ目数値なら2つ目も数値で統一
|
66
|
+
ELSE NULL -- ただしNULLは(ry
|
67
|
+
END
|
68
|
+
```
|
1
追記
answer
CHANGED
@@ -16,6 +16,7 @@
|
|
16
16
|
|
17
17
|
③が採用できる条件は、
|
18
18
|
- 出力結果としてカラムが増えることが許容できること(個人的には結果を混ぜるよりはカラムは分けてた方がメンテしやすい気はします)
|
19
|
+
出力の仕方は区分値に該当するなら登録値、なければNULLとか空文字とか…
|
19
20
|
|
20
21
|
②については上記2つの選択肢が取れない場合に採用する手段かなと思います。
|
21
22
|
|