| id1 | id2 | val | 
                  
                  
                  | a | 1 | aaa | 
                  
                  
                  | a | 2 | bbb | 
                  
                  
                  | c | 1 | ccc | 
                  
                  
                   
                  
                  
                  t2: 
                  
                  
                  | id1 | id2 | val | 
                  
                  
                  | f | 1 | NULL | 
                  
                  
                  | f | 2 | NULL | 
                  
                  
                  | n | 1 | NULL | 
                  
                  
                   
                  
                  
                  Мне нужно перенести значения t1.val в t2.val соответственно id1 и id2 
                  
                  
                   
                  
                  
                  До сих пор я это делал последовательными запросами для каждого id1: 
                  
                  
                   
                  
                  
                  update t1,t2 set t2.val=t1.val where t1.id1='a' and t2.id1='f' and t1.id2=t2.id2; 
                  
                  
                  update t1,t2 set t2.val=t1.val where t1.id1='c' and t2.id1='n' and t1.id2=t2.id2; 
                  
                  
                   
                  
                  
                  Как можно сделать это одним запросом? Может через case?
                  
                  
                
update t1,t2 set t2.val=t1.val where (t1.id1='c' and t2.id1='n' or t1.id1='a' and t2.id1='f') and t1.id2=t2.id2
Обсуждают сегодня