Fonction Prédéfinie | Description |
---|---|
SELECT CURDATE(); |
Affiche la date courante Pratique pour afficher des chambres d'hotel à reserver, ainsi personne n'aura à modifier la requête pour actualiser la date. |
SELECT CURDATE() + 0; |
Affiche la date courante sans tirets Ce format est pratique pour nommer un fichier à la date du jour. |
SELECT CURTIME(); |
Affiche l'heure courante |
SELECT NOW(); |
Affiche la date et l'heure courante |
SELECT DATE_ADD('2016-01-02', INTERVAL 31 DAY); |
Affiche une date future (avec 31 jours de plus). |
SELECT DATE_FORMAT('2012-10-03 22:23:00', '%d/%m/%Y - %H:%i:%s'); SELECT *, DATE_FORMAT(date_rendu,'le %d/%m/%Y') FROM emprunt; |
Redéfinit le format de la date (format Français dans l'exemple) |
SELECT CONCAT('a','b','c'); |
Permet de concaténer (faire suivre) des informations |
SELECT CONCAT_WS(' - ','a','b','c'); |
Permet de concaténer (faire suivre) des informations avec un séparateur WS = With Separator Cette fonction est très pratique pour réunir dans une même colonne plusieurs champs / colonnes différents comme l'adresse, le code postal et la ville. |
SELECT LENGTH('moi'); |
Indique la longueur d'une chaine (nombre de caractères) |
SELECT SUBSTRING('bonjour',4); |
Permet de couper une chaine Dans notre exemple : à partir du 4e caractère. |
SELECT TRIM(' bonsoir '); |
Permet de supprimer les espaces en début et en fin de chaine. |
SELECT DATABASE(); |
Indique quelle base de données est en cours d'utilisation. |
SELECT LAST_INSERT_ID(); |
Indique quel est le dernier identifiant généré par une base de données (après une requête INSERT). |
SELECT PASSWORD('mypass'); |
Permet de crypter une chaine sur l'algorythme AES. Cela peut être utilisé lors d'une insertion en table. |
DELIMITER $ CREATE FUNCTION salaire_brut_en_net(sal INT) RETURNS INT COMMENT 'Fonction permettant le calcul de salaire' READS SQL DATA BEGIN RETURN (sal*0.8); END $ DELIMITER ;
DELIMITER $Le delimiter permet de modifier le signe de reconnaissance de MYSQL du point-virgule (;) par le signe dollar ($).
CREATE FUNCTIONpermet de créer une fonction
salaire_brut_en_netreprésente le nom de notre fonction (choisissez un nom explicite et en cohérence avec le traitement réalisé)
(sal INT)représente un argument (paramètre) entrant de type INTeger (nombre)
RETURNS INTnous indiquons que notre fonction est destinée à retourner une valeur de type INTeger (nombre)
COMMENT 'Fonction permettant le calcul de salaire'commentaire d'accompagnement pour mieux l'appréhender lors du listing des fonctions disponibles.
READS SQL DATACette ligne permet d'indiquer au système que notre traitement ne fera que lire (et non pas modifier, supprimer) des données.
BEGINDébut de nos instructions
RETURN (sal*0.8);Nous retournerons le salaire multiplié par 0,8 %, c'est à dire que l'on retire 20 % et qu'on garde seulement 80 % du chiffre qu'on nous aura communiqué (avec l'argument entrant).
ENDFin de nos instructions
DELIMITER ;Permet de retrouver le delimiter d'origine.
-- 1er exemple (test sur un nombre) SELECT salaire_brut_en_net(2500); -- 2e exemple (test lors d'une insertion) INSERT INTO employes (prenom, salaire) values ('test', salaire_brut_en_net(3200)); SELECT * FROM employes; -- 3e exemple (test lors d'une selection) SELECT prenom, salaire_brut_en_net(salaire) FROM employes;
DROP FUNCTION salaire_brut_en_net ;
SHOW FUNCTION STATUS ;
SQL
1. Base De Donnees 2. Modelisation Base De Donnees 3. Requete De Selection Select 4. Requete D'insertion Insert 5. Requete De Modification Update 6. Requete De Supression Delete 7. Exercice Requete 8. Requete Imbriquee 9. Jointure 10. Union 11. Function 12. Table Virtuelle 13. Table Temporaire 14. Transaction 15. Variable Et Requete Preparee 16. Procedure Stockee 17. Trigger 18. Event 19. Entrainement Evaluation 20. Contraintes Integrite