Bonjour à tous,
Je m'interrogeais sur la manière dont ces deux éléments sont interprétés par le moteur SQL.
Dans la compréhension que j’en ai, le comportement devrait être sensiblement le même mais je me fourvoie peut-être.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
WITH 
	chose(colonne1, colonne2)
	AS
	(
		SELECT
			a,
			max(b)
		FROM table1
		GROUP BY a
	)
	UPDATE table2 set colonne2 = chose.colonne2
	WHERE table2.colonne1 = chose.colonne2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
CREATE TABLE #chose
(
	colonne1,
	colonne2
)
 
INSERT INTO #chose
	SELECT
			a,
			max(b)
		FROM table1
		GROUP BY a
 
UPDATE table2 set colonne2 = #chose.colonne2
	WHERE table2.colonne1 = #chose.colonne2