SELECT UPPER(nom) FROM jeux_video
SELECT UPPER(nom) AS nom_maj FROM jeux_video
SELECT UPPER(nom) AS nom_maj, possesseur, console, prix FROM jeux_video
SELECT LOWER(nom) AS nom_min FROM jeux_video
SELECT LENGTH(nom) AS longueur_nom FROM jeux_video
SELECT ROUND(prix, 2) AS prix_arrondi FROM jeux_video
SELECT AVG(prix) AS prix_moyen FROM jeux_video
SELECT SUM(prix) AS prix_total FROM jeux_video WHERE possesseur='Patrick'
SELECT MAX(prix) AS prix_max FROM jeux_video
SELECT MIN(prix) AS prix_min FROM jeux_video
SELECT COUNT(*) AS nbjeux FROM jeux_video
SELECT COUNT(DISTINCT possesseur) AS nbpossesseurs FROM
jeux_video
SELECT AVG(prix) AS prix_moyen, console FROM jeux_video GROUP BY console
SELECT AVG(prix) AS prix_moyen, console FROM jeux_video GROUP BY console HAVING prix_moyen <= 10
HAVING est un peu l'équivalent de WHERE, mais il agit sur les données une fois qu'elles ont été regroupées. C'est donc une façon de filtrer les données à la fin des opérations.
HAVING ne doit s'utiliser que sur le résultat d'une fonction d'agrégat
WHERE agit en premier, avant le groupement des données, tandis que HAVING agit en second, après le groupement des données
SELECT pseudo, message, date FROM minichat WHERE date = '2010-04-02'
SELECT pseudo, message, date FROM minichat WHERE date >= '2010-04-02 15:28:20'
SELECT pseudo, message, date FROM minichat WHERE date BETWEEN '2010-04-02 00:00:00' AND '2010-04-18 00:00:00'
INSERT INTO minichat(pseudo, message, date) VALUES('Mateo', 'Message !', NOW())
Notez qu'il existe aussi les fonctions CURDATE() et CURTIME() qui retournent respectivement uniquement la date (AAAA-MM-JJ) et l'heure (HH:MM:SS).
DAY(), MONTH(), YEAR() : extraire le jour, le mois ou l'année
HOUR(), MINUTE(), SECOND() : extraire les heures, minutes, secondes
SELECT pseudo, message, DAY(date) AS jour FROM minichat
SELECT pseudo, message, DATE_FORMAT(date, '%d/%m/%Y %Hh%imin%ss') AS date FROM minichat
DATE_ADD et DATE_SUB : ajouter ou soustraire des dates
SELECT pseudo, message, DATE_ADD(date, INTERVAL 2 MONTH) AS date_expiration FROM minichat
- Les jointures internes : elles ne sélectionnent que les données qui ont une correspondance entre les 2 tables
- Les jointures externes : elles sélectionnent toutes les données, même si certaines n'ont pas de correspondance dans l'autre table
SELECT jeux_video.nom, proprietaires.prenom
FROM proprietaires, jeux_video
WHERE jeux_video.ID_proprietaire = proprietaires.ID
seLECT commentaires.auteur, billets.titre
FROM commentaires
INNER JOIN billets ON commentaires.id_b = billets.id_b
SELECT commentaires.auteur, billets.titre
FROM commentaires
LEFT JOIN billets ON commentaires.id_b = billets.id_b
SELECT commentaires.auteur, billets.titre
FROM commentaires
LEFT JOIN billets ON commentaires.id_b = billets.id_b
Aucun commentaire:
Enregistrer un commentaire