回答編集履歴
4
推敲
    
        answer	
    CHANGED
    
    | 
         @@ -8,6 +8,6 @@ 
     | 
|
| 
       8 
8 
     | 
    
         
             
            ただ、性能の観点からは、where条件で絞り込める場合には指定をした方が良いですが。
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
            追記
         
     | 
| 
       11 
     | 
    
         
            -
            このupdate文は使う場面が限定されます。
         
     | 
| 
      
 11 
     | 
    
         
            +
            この質問のupdate文は使う場面が限定されます。
         
     | 
| 
       12 
12 
     | 
    
         
             
            何故なら、実行する度に値が加算されてしまうからです。
         
     | 
| 
       13 
13 
     | 
    
         
             
            初回のみの実行でないなら、selectなどで計算された値で更新するようになっていないと駄目ですね。
         
     | 
3
追記
    
        answer	
    CHANGED
    
    | 
         @@ -5,4 +5,9 @@ 
     | 
|
| 
       5 
5 
     | 
    
         
             
              備品.数量 = Switch(備品名='ホワイトボード', 数量+1, 備品名='椅子', 数量+10, True, 数量)
         
     | 
| 
       6 
6 
     | 
    
         
             
            ```
         
     | 
| 
       7 
7 
     | 
    
         
             
            updateの際、値を変更したりしなかったりという分岐が必要な場合、変更前の値で更新するという本来無駄な処理を利用すると、複雑さを回避できます。
         
     | 
| 
       8 
     | 
    
         
            -
            ただ、性能の観点からは、where条件で絞り込める場合には指定をした方が良いですが。
         
     | 
| 
      
 8 
     | 
    
         
            +
            ただ、性能の観点からは、where条件で絞り込める場合には指定をした方が良いですが。
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            追記
         
     | 
| 
      
 11 
     | 
    
         
            +
            このupdate文は使う場面が限定されます。
         
     | 
| 
      
 12 
     | 
    
         
            +
            何故なら、実行する度に値が加算されてしまうからです。
         
     | 
| 
      
 13 
     | 
    
         
            +
            初回のみの実行でないなら、selectなどで計算された値で更新するようになっていないと駄目ですね。
         
     | 
2
追記
    
        answer	
    CHANGED
    
    | 
         @@ -4,4 +4,5 @@ 
     | 
|
| 
       4 
4 
     | 
    
         
             
            UPDATE 備品 SET 
         
     | 
| 
       5 
5 
     | 
    
         
             
              備品.数量 = Switch(備品名='ホワイトボード', 数量+1, 備品名='椅子', 数量+10, True, 数量)
         
     | 
| 
       6 
6 
     | 
    
         
             
            ```
         
     | 
| 
       7 
     | 
    
         
            -
            updateの際、値を変更したりしなかったりという分岐が必要な場合、変更前の値で更新するという本来無駄な処理を利用すると、複雑さを回避できます。
         
     | 
| 
      
 7 
     | 
    
         
            +
            updateの際、値を変更したりしなかったりという分岐が必要な場合、変更前の値で更新するという本来無駄な処理を利用すると、複雑さを回避できます。
         
     | 
| 
      
 8 
     | 
    
         
            +
            ただ、性能の観点からは、where条件で絞り込める場合には指定をした方が良いですが。
         
     | 
1
追記
    
        answer	
    CHANGED
    
    | 
         @@ -1,5 +1,5 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            **Switch関数**は評価式がTrueの場合に対応した値を返却します。
         
     | 
| 
      
 1 
     | 
    
         
            +
            **Switch関数**は評価式がTrueの場合に対応した値を返却しますので、評価式に該当しないものはNullが返却されます。
         
     | 
| 
       2 
     | 
    
         
            -
            質問の内容では**else**に該当する結果を返せるようにすればよいので、**iif()**に切り替えるか以下のようにします。
         
     | 
| 
      
 2 
     | 
    
         
            +
            質問の内容でwhereを省く場合は、**else**に該当する結果を返せるようにすればよいので、**iif()**に切り替えるか以下のようにします。
         
     | 
| 
       3 
3 
     | 
    
         
             
            ```SQL
         
     | 
| 
       4 
4 
     | 
    
         
             
            UPDATE 備品 SET 
         
     | 
| 
       5 
5 
     | 
    
         
             
              備品.数量 = Switch(備品名='ホワイトボード', 数量+1, 備品名='椅子', 数量+10, True, 数量)
         
     |