Fonction bdd

Bonjour,
j'aimerais Calculer la somme des durées de tous les films en écrivant une requête SQL. Puis faire
la même chose avec une fonction parcourant tous les enregistrements un par un (avec for x in et un
RECORD) et retournant le même résultat.
avec une requete sql cest simple je fais select sum(duree) from films. mais avec une fonction je ne comment m'y prendre

Configuration: Windows / Chrome 96.0.4664.45

1 réponse

  1. Modérateur
    Bonjour,

    Une fonction dans quoi ? dans quel langage ? et avec quel SGBD

    On doit pouvoir faire compliqué (une boucle) mais la fonction doit aussi probablement être capable d'accueillir le code sql (select SUM()).
    1. En mysql dans une table films qui contient un champ durée avec de nombreuses valeurs
    2. Modérateur
      @Gafy225je ne connais pas les procédures et fonctions dans mysql, mais une simple recherche comme par exemple : https://dev.mysql.com/doc/refman/8.0/en/create-procedure.html

      ou on voit que l'on peut creer une procédure du style

      mysql> CREATE PROCEDURE citycount (IN country CHAR(3), OUT cities INT)
             BEGIN
               SELECT COUNT(*) INTO cities FROM world.city
               WHERE CountryCode = country;
             END//
      Query OK, 0 rows affected (0.01 sec)
      
      mysql> delimiter ;
      
      mysql> CALL citycount('JPN', @cities); -- cities in Japan
      Query OK, 1 row affected (0.00 sec)