Cours OPENCLASSROOMS : Les infos utiles de MySQL

Sélection des bouts de code, des informations utiles mais que pour moi ;-)

Les Informations ci-dessous proviennent en partie du cours Mysql présent sur le site OPENCLASSROOMS à cette adresse : https://openclassrooms.com/fr/courses/1959476-administrez-vos-bases-de-donnees-avec-mysql

 

Plan de nommage personnel

 

Par habitude, je ne mets jamais d'espace, d'accent ou de majuscule dans les noms de bdd, tables ou champs. Les caractères que j'utilise sont a-z 0-9 _ (underscore).  J'essaye d'utiliser des termes anglophones. 

Je préfixe tous mes objets pour plusieurs raisons :

  • avoir une unicité des champs dans ma base de données,
  • ne pas utiliser les mots clés du SGBD,
  • éviter les alias dans mes requêtes,
  • savoir exactement à quelle table appartien un champ

Exemple :

base de données project5

table utilisateur : p5_user

champs de la table :

u_id, u_name, u_mail

 

Configuration

 

Moteur de Mysql : InnoDB pour l'utilisation des clés étrangères

Encodage : UTF-8

 

Requête SQL peu commune

 

sélection de tous les animaux sauf les chien

SELECT * FROM Animal WHERE sexe='F' NOT espece='chien';

-- OU

SELECT * FROM Animal WHERE sexe='F'AND ! (espece='chien');

Sélection des animaux qui sont soit des mâles, soit des perroquets (mais pas les deux) :

SELECT * FROM Animal WHERE sexe='M'     XOR espece='perroquet';

Recherche avec LIKE sensible ou non à la casse

SELECT * FROM Animal WHERE nom LIKE '%Lu%'; -- insensible à la casse

SELECT * FROM Animal WHERE nom LIKE BINARY '%Lu%'; -- sensible à la casse

Concaténation sur une fonction d'agrégation : GROUP_CONTACT

SELECT SUM(prix), GROUP_CONTAT(nom_courant) FROM Animal 

Super-agrégats : Option WITH ROOLUP de GROUP By permet d'afficher des lignes supplémentaires représentant. Cette fonction peut s'utiliser avec COALESCE afin de remplacer les NULL des sous totaux.

Exemple :

SELECT COALESCE(sexe,'total'), COUNT(*) FROM Animal GROUP BY sexe WITH ROLLUP 

 

Commentaires (0)

Laisser un commentaire

Envoyer