Arjuna Aircraft Ident.: F-MBSD | Hmmm...
   Avec SQL Server 2000, j'ai réussi à la faire (parceque je me souvenais de la syntaxe) sauf que je me suis rendu compte que ça ne marche pas si on boucle la jointure sur elle-même  
  
  Code :
 - from test2 b
 - drop table test1
 - go
 - drop table test2
 - go
 - create table test1 (id numeric, val1 varchar(10), val2 varchar(1))
 - go
 - insert into test1 (id, val1, val2) values (1, 'toto', 'O')
 - insert into test1 (id, val1, val2) values (2, 'titi', 'O')
 - insert into test1 (id, val1, val2) values (1, 'truc', 'N')
 - insert into test1 (id, val1, val2) values (2, 'tata', 'N')
 - insert into test1 (id, val1, val2) values (3, 'tutu', 'O')
 - go
 - create table test2 (id numeric, val1 varchar(10), val2 varchar(1))
 - go
 - insert into test2 (id, val1, val2) values (1, 'toto', 'O')
 - insert into test2 (id, val1, val2) values (2, 'titi', 'O')
 - insert into test2 (id, val1, val2) values (1, 'truc', 'N')
 - insert into test2 (id, val1, val2) values (2, 'tata', 'N')
 - insert into test2 (id, val1, val2) values (3, 'tutu', 'O')
 - go
 - update test1
 - set test1.val1 = test2.val1
 - from test2
 - where test1.id = test2.id
 - and test1.val2 = 'O'
 - and test2.val2 = 'N'
 - go
 - select *
 - from test1
 - go
 - ID      VAL1  VAL2
 - 1	truc	O
 - 2	tata	O
 - 1	truc	N
 - 2	tata	N
 - 3	tutu	O
 
  |  
 
   Rien à faire avec Oracle, même si je passe par deux tables... Grrrr c'est quoi cette syntaxe ?      |