Gestion de la base de données et haute disponibilité Chapitre 5 Fonctions de base de données et processus de création de base de données
Un: les fonctions de base de données
1.1: Fonctions mathématiques
Fonction mathématique | la description | |
---|---|---|
abs (x) | Renvoie la valeur absolue de x | Valeur absolue |
rand() | Renvoie un nombre aléatoire de 0 à 1 | bord de rand |
mod (x, y) | Renvoie le reste de x divisé par y | Prends le reste |
puissance (x, y) | Renvoie x à la puissance y | puissance avance rapide |
rond (x) | Renvoie l'entier le plus proche de x | entier rond |
rond (x, y) | Conserver la valeur de x après avoir arrondi à y décimales | |
sqrt (x) | Renvoie la racine carrée de x | racine carrée sqrt |
tronquer (x, y) | Renvoie la valeur du nombre x tronqué à y décimales | tronquer l'interception |
ceil (x) | Renvoie le plus petit entier supérieur ou égal à x | Plafond monté au plafond |
plancher (x) | Renvoie le plus grand entier inférieur ou égal à x | sol |
le plus grand (x1, x2 ...) | Renvoie la plus grande valeur de la collection | |
le moins (x1, x2 ...) | Renvoie la plus petite valeur de l'ensemble |
1.2: Fonctions d'agrégation
Fonction d'agrégation | la description | |
---|---|---|
moy () | Renvoie la valeur moyenne de la colonne spécifiée | moyenne moyenne |
compter() | Renvoie le nombre de valeurs non NULL dans la colonne spécifiée | compter compter |
min () | Renvoie la valeur minimale de la colonne spécifiée | |
max () | Renvoie la valeur maximale de la colonne spécifiée | |
somme (x) | Renvoie la somme de toutes les valeurs de la colonne spécifiée |
1.3: Fonctions de chaîne
Fonction de chaîne | la description | |
---|---|---|
longueur (x) | Renvoie la longueur de la chaîne x | longueur |
réduire() | Renvoie la valeur sans le format spécifié | couper couper, couper, supprimer des espaces ne peut supprimer que les espaces aux deux extrémités |
concat (x, y) | Concaténer les paramètres fournis x et y dans une chaîne | fusion concat |
supérieur (x) | Remplacez toutes les lettres de la chaîne x par des lettres majuscules | plus haut |
inférieur (x) | Changer toutes les lettres de la chaîne x en lettres minuscules | inférieur |
gauche (x, y) | Renvoie les y premiers caractères de la chaîne x | Valeur à gauche |
droite (x, y) | Renvoie les y derniers caractères de la chaîne x | Valeur à droite |
répéter (x, y) | Répéter la chaîne x y fois | répéter répéter |
espace (x) | X espaces sont retournés | espace spatial |
remplacer (x, y, z) | Remplacez la chaîne z par la chaîne y dans la chaîne x | remplacer |
strcmp (x, y) | En comparant x et y, la valeur renvoyée peut être -1,0,1 et convertie en comparaison de code ASCII | strcmp compare des chaînes |
sous-chaîne (x, y, z) | Obtenez une chaîne de longueur z à partir de la yème position dans la chaîne x | chaîne d'interception de sous-chaîne |
inverse (x) | Chaîne inverse x | inverser, inverser |
1.4: Fonctions de date et d'heure
Fonction de chaîne | la description | |
---|---|---|
caillé () | Renvoie l'année, le mois et le jour de l'heure actuelle | Obtenez la date actuelle |
curtime () | Renvoie l'heure, la minute et la seconde de l'heure actuelle | Obtenir l'heure actuelle |
maintenant() | Renvoie la date et l'heure de l'heure actuelle | Quelle heure est-il maintenant |
mois (x) | Renvoie la valeur du mois à la date x | |
semaine (x) | La date de retour x correspond aux premières semaines de l'année | |
heure (x) | Renvoie la valeur de l'heure en x | |
minute (x) | Renvoie la valeur des minutes en x | |
seconde (x) | Renvoie la valeur des secondes en x | |
dayofweek(x) | Le retour x est le jour de la semaine, 1 dimanche, 2 lundi | |
jour du mois (x) | La date de calcul x est le jour du mois | |
jour de l'année (x) | La date de calcul x est le jour de l'année |
1.5: Procédures stockées
// Formater la
procédure stockée #define
delimiter $$
create procedure存储过程名(in 参数名 参数类型)
begin
#定义变量
declare变量名变量类型
#变量赋值
set 变量名 = 值
sql语句1;
sql语句2;
..
sql语句n;
end $$
delimiter ;
#Appeler procédure stockée
appel nom de la procédure stockée (paramètres réels);
#Query procédure stockée
afficher l'état de la procédure où db = 'base de données';
#Delete procédure stockée
suppression procédure stockée nom de la procédure;
Exemple 1
mysql> delimiter $$
mysql> create procedure myrole() //创建存储过程,名字为myrole
-> begin
-> select name,score from accp;
-> end $$
Query OK, 0 rows affected (0.00 sec)
mysql> delimiter ;
mysql> call myrole();
Exemple: 2
mysql> delimiter $$
mysql> create procedure myschool(in my_name varchar(10))
-> begin
-> select name score from accp where name=my_name;
-> end$$
Query OK, 0 rows affected (0.01 sec)
mysql> delimiter ;
mysql> show procedure status where db='school';
Exemple 3:
mysql> delimiter $$
mysql> create procedure myupdate(in my_score decimal(5,2))
-> begin
-> declare hob int(3);
-> if my_score >= 80 then
-> set hob = 1;
-> else
-> set hob = 2;
-> end if;
-> update accp set score=my_score,hobby=hob where name='zhangsan';
-> end$$
Query OK, 0 rows affected (0.06 sec)
//修改名为张三的分数和hobby,修改zhangsan的hobby=2,score=75
mysql> delimiter ;
mysql> call myupdate(75);