J 'essaye d inserer des donnes dans une table "NEW_TABLE" a partir des donnes d'une autre table "OLD_TABLE"

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
/* INSERTION  */
 
INSERT INTO NEW_TABLE (
CHAMP1,
CHAMP2,
CHAMP3,
CHAMP4
)
VALUES
('W'
, (SELECT DISTINCT DATE FROM OLD_TABLE)
,(select count (*) from OLD_TABLE where CHAMP1 = 'W' and CHAMP2 = 'OK')
, 'OK')

(SELECT DISTINCT DATE FROM OLD_TABLE) donne la date

(select count (*) from OLD_TABLE where CHAMP1 = 'W' and CHAMP2 = 'OK')
donne un nombre.

J'ai 2 erreurs

(SELECT DISTINCT DATE FROM OLD_TABLE)
Subqueries are not allowed in this context. Only scalar expressions are allowed.

(select count (*) from OLD_TABLE where CHAMP1 = 'W' and CHAMP2 = 'OK')
Subqueries are not allowed in this context. Only scalar expressions are allowed.
Temporairement, j'ai remplacé par des valeurs mais le but est que ça soit automatisé et que j'ai pas à tout faire a la main.
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
VALUES
('W'
, 301109
, 130
, 'OK')

Je sais pas comment, il faut faire, es ce que quelqu un aurait une solution.
Merci d avance.
Faut t il mettre ca sous une variable ? J'ai un peu cherché mais j'ai pas reussi a mettre le resultats d un select sous une variable.