Il est de bon ton de se souhaiter la bonne année. Mais vous, et vous seul, pourrez faire en sorte que cette année soit bonne, meilleure que celle qui vient de s'écouler. Apprenez à ne compter que sur vous, car personne n'est plus qualifié que vous-même pour bâtir, réparer ou améliorer votre propre vie. Personne ne fera les choses à votre place. D'ailleurs, tout ce que les autres peuvent faire, c'est souhaiter que vous le fassiez. Et ne croyez pas que tout ceux qui vous entourent vous apporteront des solutions : certains font juste partie de vos problèmes. Transformez vos résolutions en actes, et dans douze mois, retournez-vous et souriez-vous fièrement : C'était long. C'était difficile. Mais ça y est : 2017 était une bonne année, merci Moi.

PHP - MySQL [Retour au menu]
SQL : Sélection, modification, suppression des données

Select, From, *, Where, Like et %, Tris avec Order By Asc|Desc, Suppression de données avec Delete, insertion, Modification avec Update

Petite astuce : Si vous disposez d'Access et que vous le maîtrisez quelque peu, vous pouvez apprendre la syntaxe SQL à moindre effort : Il vous suffit de créer une requête, et d'aller visualiser comment elle s'écrit en SQL en allant dans le menu "Affichage/Mode SQL"

Préparation de la table

Soit la table :

CREATE TABLE T_Celebrite
  (
  Titre        varchar (12),
  NomCelebrite varchar (30),
  Prenom       varchar (20),
  Domaine      varchar (20),
  Pays         varchar (20),
  EtatCivil    varchar (20),
  Salaire      int     (20)
  );

que j'ai rempli avec une centaine de célébrités trouvées dans ce fichier texte que j'ai exécuté comme une requête SQL de création d'enregistrements.

Exemple basique : SELECT et FROM

Cet exemple se contente d'afficher tous les noms dans l'ordre ou ils sont stockés dans la table T_Celebrite

SELECT `NomCelebrite` FROM `T_Celebrite`;

Affichage de tous les champs : L'étoile *

SELECT * FROM T_Celebrite

La clause WHERE

WHERE permet de sélectionner une partie des enregistrements.

L'exemple suivant affiche le prénom, le nom et le salaire des célébrités dont le salaire est supérieur à 10000 francs :

SELECT Prenom, NomCelebrite, Salaire
FROM T_Celebrite
WHERE
Salaire > 10000

La clause LIKE, %

Like permet d'extraire seulement une partie d'un champ.

L'exemple suivant extrait les gens dont le prénom commence par M

SELECT Prenom, NomCelebrite
FROM T_Celebrite
WHERE Prenom LIKE "M%"

Les tris : La clause ORDER BY ASC|DESC

L'exemple suivant affiche tous les gens qui possèdent la lettre E dans leur nom, triés par ordre alphabétique de leur domaine d'activité, et, pour chaque domaine, du plus riche au plus pauvre :

SELECT Prenom, NomCelebrite, Domaine, Salaire
FROM T_Celebrite
WHERE NomCelebrite LIKE "%e%"
ORDER BY Domaine ASC, Salaire DESC

Suppression de données : La clause DELETE

Pour vider entièrement une table

DELETE FROM T_Celebrite

Supprimer les hommes :

DELETE FROM T_Celebrite
WHERE Titre LIKE "Monsieur"

Modification de données : La clause UPDATE

La ligne suivante précise que le salaire de Weissmuller doit passer à 9999 :

UPDATE T_Celebrite SET Salaire=9999 WHERE NomCelebrite='Weissmuller'

On peut également modifier une donnée par rapport à elle même. La ligne suivante augmente le salaire de Weissmuller de 10 francs :

UPDATE T_Celebrite SET Salaire=Salaire+10 WHERE NomCelebrite='Weissmuller'

Cette méthode est pratique pour compter le nombre de fois ou un utilisateur se logue par exemple, ou pour le laisser modifier lui-même son mot de passe.

Ajout de données : INSERT INTO

$LaRequete = "INSERT INTO T_LaTable (Champ1, Champ18, Champ4) VALUES ('Truc','Machin', 'Bidule')";
mysql_query($query);

---