質問するログイン新規登録

質問編集履歴

1

update

2019/02/08 01:22

投稿

kassy
kassy

スコア12

title CHANGED
File without changes
body CHANGED
@@ -1,11 +1,36 @@
1
1
  SQLiteのCASE文で一気に条件分岐したいです
2
+
3
+ 例えば、
4
+ | id | num |
5
+ |---|---|
6
+ |1|10|
7
+ |2|20|
8
+ |3|30|
9
+
10
+ というデータがあった際に、idが1の時は数字を日本語読みで表示したいとします。
11
+ 現在はCASEを複数用いて、
12
+ ```sql
13
+ select
14
+ case when id = 1
15
+ then 'いち'
16
+ else id
17
+ end as id,
18
+ case when id = 1
19
+ then 'じゅう'
20
+ else num
21
+ end as num
22
+ from table
23
+ ```
24
+ みたいに書いているのですが、同じcase文を書くのが煩わしいです。
25
+ そこで次のようにcaseをまとめたいです。
26
+
2
27
  以下疑似コードです
3
28
  ## 理想
4
29
  ```sql
5
30
  select
6
- case
7
- when num > 1
31
+ case when num = 1
8
- then a, b, c, d
32
+ then 'いち' as id, 'じゅう' as num
9
- else e, f, g, h
33
+ else id, num
10
34
  end
35
+ from table
11
36
  ```