article(s) dans votre panier VOIR

Tuto PHP/MySQL | Fonctions SQL

  • Vidéo 133 sur 158
  • 4h43 de formation
  • 158 leçons

Un contenu flash devrait s'afficher ici. Votre navigateur ne comporte pas de plugin flash, ou il ne s'est pas correctement initialisé.

Vous pouvez télécharger le plugin flash depuis le site d'Adobe à l'adresse suivante : http://get.adobe.com/flashplayer/.

Pour accéder à la suite de cette formation, vous devez vous abonner.
previous
summary
resume
next
play
Fonctions SQL
00:00 / 02:20
HD
fullscreen
Je m’abonne
à partir de 16,6 € / mois
  • Visionnage en ligne
  • Accès illimité à toutes nos formations
OU
J'achète uniquement
la formation
49,90€
  • Téléchargement + VOD à vie
  • Accès uniquement à cette formation

Sommaire de la formation

Détails de la formation

Arrivés à ce point dans la formation, vous utilisez couramment les fonctions du langage PHP. Mais saviez-vous que le langage SQL possède ses propres fonctions ? Ces dernières pourront être utilisées dans des requêtes pour affiner les recherches.

Il existe deux types de fonctions SQL :

Les fonctions scalaires. Elles s'appliquent à chacune des valeurs qui lui sont passées. Quelques exemples : UPPER(), LOWER(), LENGTH(), ROUND().

Les fonctions d'agrégat. Elles effectuent des calculs sur une table et retournent un résultat. Quelques exemples : AVG(), SUM(), MAX(), MIN(), COUNT().

Voyons comment utiliser ces fonctions sur des exemples précis.

Nous allons convertir en minuscules les valeurs du champ CustomerID et en majuscules les valeurs du champ Country de la table northwind .

Pour arriver à ce résultat, vous utiliserez les fonctions scalaires LOWER() et UPPER() :

<!DOCTYPE html>

<html>

  <head>

    <meta charset="UTF-8" />

    <title>Utilisation de fonctions SQL</title>

    <style>

      td { padding-right: 30px;}

    </style>

  </head>

  <body>

    <?php

      try {

        $base = new PDO('mysql:host=localhost; dbname=northwind', 'root', '');

      }    

      catch(exception $e) {

        die('Erreur '.$e->getMessage());

      }

      $base->exec("SET CHARACTER SET utf8");

      $retour = $base->query('SELECT LOWER(CustomerID) as CustomerID_min, UPPER(Country) as Country_maj FROM customers');

      echo "<table>";

      while ($data = $retour->fetch()){

        echo "<tr><td>".$data."</td>";

        echo "<td>".$data."</td></tr>";

      }

      echo "</table>";

      $base = null;

    ?>

  </body>

</html>

Exécutons ce code dans WAMP Server. Le résultat est bien conforme à ce qui était attendu.

Un autre exemple. Supposons que vous vouliez connaître la valeur moyenne du champ Quantity de la table order_details de la base de données northwind.

Vous utiliserez pour cela la fonction d'agrégat AVG() :

SELECT AVG(Quantity) FROM order_details;

 

Pour saisir facilement cette requête, rien de tel que l'interface d'administration phpMyAdmin. Cliquez sur la base de données northwind dans le volet gauche. Basculez sur l'onglet SQL. Entrez la requête dans la zone dédiée, puis cliquez sur Exécuter. Le résultat est immédiatement affiché dans la partie inférieure de la fenêtre.