#1242 - Subquery returns more than 1 row

Résolu/Fermé
Impide - 17 déc. 2017 à 15:46
 Impide - 17 déc. 2017 à 17:38
Bonjour,

Je souhaiterai mettre dans une table vitesse moyenne avec comme attribut vitesse le quotient de 2 données d'une autre table (Distante et durée) : vitesse = Distance/durée.
Donc j'ai essayer ça :

UPDATE VitessesMoyenne
SET Vitesse = (SELECT Distance FROM Courses)/(SELECT Duree FROM Courses);

mais ça m'affiche une erreur #1242 - Subquery returns more than 1 row.

J'ai essayer plein d'autre truc avec INSERT INTO mais je trouve pas.
Je précise que je suis débutant.
Si quelqu'un pourrait m'aidez s'il vous plaît.
A voir également:

3 réponses

yg_be Messages postés 23405 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 décembre 2024 Ambassadeur 1 557
17 déc. 2017 à 16:06
bonjour,
je te suggère d'essayer ceci
SELECT *,  Distance/Duree as Vitesse from Courses
. tu peux utiliser cette requête ensuite, comme si c'était une table.

si cela ne te convient pas, explique quels sont les champs dans les tables Courses et VitessesMoyenne.
explique nous aussi pourquoi tu veux enregistrer la vitesse moyenne dans une table, alors que tu peux la calculer quand tu veux: il n'est pas recommandé d'enregistrer des informations calculables.
0
Merci de votre réponse,
Je viens de l’exécuter et j'ai bien obtenu la vitesse.

Moi ce que je voudrais c'est mettre ce résultat dans une nouvelle table que j'ai crée VitesseMoyenne afin de connaître la Vitesse Moyenne par Course.

Dans la table Course il y a comme attribut :
-NoCourse
-NomCourse
-InfoCourse
-Distance
-Duree
-Difficulté, avec comme clé primaire NoCourse.

Et dans la table VitesseMoyenne :
-NoCourse
-Vitesse, avec comme clé primaire et étrangère NoCourse.

En espérant avoir été le plus clair possible.
0
yg_be Messages postés 23405 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 décembre 2024 1 557 > Impide
17 déc. 2017 à 17:38
Alors je te suggère de faire ainsi:
CREATE VIEW VitesseMoyenne AS SELECT NoCourse, Distance/Duree as Vitesse from Courses;
0