Problème Insert avec un Select
Bonjour à tous,
J'ai pas trop l'habitude de faire des requêtes d'insertion et je suis confronté à un problème. Lequel me direz-vous ? Moi je réponderais ma requête ne passe pas :aie:
Voici ma requête :
Code:
1 2 3 4 5
|
insert into ecriture
select max(no_ecriture) +1, current_date, null, 300, ecriture.no_compte
from ecriture natural join compte natural join client
where nom ='Mortimer' and prenom = 'Philip'; |
Et voici l'erreur qu'elle me renvoie
Citation:
ERROR: column "ecriture.no_compte" must appear in the GROUP BY clause or be used in an aggregate function
État SQL :42803
Pourquoi cette requête ne passe-t-elle pas ?
Mon prof propose une solution très facile qui est :
Code:
1 2 3
| select no_compte
from client natural join compte
where prenom = 'Philip' And nom = 'Mortimer'; |
On récupère le résultat du Select et on l'insère dans l'insert :
Code:
1 2 3
|
insert into ecriture
select max(no_ecriture) + 1, current_date, NULL, 300, 6 from ecriture; |
Mais bon moi j'aimais bien ma requête.:aie:
Quelqu'un aurait-il une idée sur mon erreur ?
Merci à tous