Maison > base de données > tutoriel mysql > le corps du texte

Résumé des opérateurs et fonctions Mysql

黄舟
Libérer: 2017-09-20 11:18:04
original
1231 Les gens l'ont consulté

Cet article vous donne un résumé des opérateurs couramment utilisés dans MySQL ainsi que l'utilisation et des exemples de fonctions courantes. Il est très complet. Les amis dans le besoin peuvent s'y référer

Jetons un coup d'œil à un exemple. premier


use test;
create table `employee`(
  emp_no int unsigned,
  emp_name varchar(30),
  emp_sex varchar(3),
  emp_age tinyint unsigned,
  sal double,
  history datetime
);
insert into employee values(1, '张三', '男', 18, 5000, '2012-04-23'),
(2, '李四', '男', 27, 4500, '2013-05-23'),
(3, '王五', '男', 23, 4700, '2012-04-21'),
(4, '子龙', '男', 19, 3800, '2011-03-04'),
(5, '李白', '男', 15, 6200, '2015-09-09'),
(6, '刘备', '男', 28, 2500, '2016-02-11'),
(7, '吕布', '男', 21, 6000, '2010-10-18'),
(8, '尚香', '女', 16, 4500, '2011-09-26'),
(9, '小乔', '女', 15, null, '2013-07-05'),
(10, '大乔', '女', 16, 5000, '2017-09-01');
Copier après la connexion

Opérateurs couramment utilisés :
1 : égal à ( = )


  select * from employee where sal = 3800;
  select * from employee where sal = null;   --这里查询不到为null的数据
Copier après la connexion

2 : égal à ( <=> )


  select * from employee where sal <=> 3800;
  select * from employee where sal <=> null;  --这里可以查询到为null的数据
Copier après la connexion

3 : est le jugement (nul)


  select * from employee where sal is null;
  select * from employee where sal is not null;
Copier après la connexion

4 : Un jugement de valeur nul peut également utiliser isnull();


  select * from employee where isnull(sal);
  select * from employee where !isnull(sal);
Copier après la connexion

5 : Dans l'intervalle (entre) Within entre min et max ps : Voici un intervalle fermé

select * from employee where sal between 4500 and 5000;
Copier après la connexion

6 : Pas dans l'intervalle

select * from employee where sal not between 4500 and 5000;
  --null不为包括进去
Copier après la connexion

7 : et et ou


  select * from employee where sal not between 4500 and 5000 or sal is null;
  select * from employee where sal = 4500 and emp_sex = &#39;女&#39;;
Copier après la connexion

8 : inférieur à (<), supérieur à (>), inférieur ou égal à (<=), supérieur ou égal à (>=)

select * from employee where sal >= 4500;
Copier après la connexion

<span style="font-family : "Microsoft Yahei", "Hiragino Sans GB", Helvetica, "Helvetica Neue ", 微软雅é»', Tahoma , Arial, sans-serif;">*************************** *************** ********************************** **************** **********************</span><code><span style="font-family: "Microsoft Yahei", "Hiragino Sans GB", Helvetica, "Helvetica Neue", 微软雅黑, Tahoma, Arial, sans-serif;">***************************************************************************************************************</span><br/>

Fonction mathématique
1 : rand();


  select rand() from dual;  --dual是一个伪表
  select 1+1 from dual;
  select rand();  --可以简写
Copier après la connexion

2 : moindre(valeur1, valeur2, ...) renvoie la valeur minimale


  select least(54,76,4,65,76,87,87,56,65,654,45,23,1,76);
  select least(54,76,4,65,76,87,87,56,65,654,45,23,1,76) as min_value;  --列名可以起一个别名
Copier après la connexion

3 : plus grand(valeur1, valeur2, ...) Renvoie la valeur maximale

 select greatest(54,76,4,65,76,87,87,56,65,654,45,23,1,76);
Copier après la connexion

4: round(M, D); Renvoie la valeur arrondie de M, représentée par D Combien de décimales à conserver, la valeur par défaut est 0


  select round(1.69);
  select round(1.69, 1);
Copier après la connexion

5 : valeur absolue abs()


  select 5-10;
  select abs(5-10);
Copier après la connexion

****************** **************************** ********************** **************************** ********************** ***

Fonction d'agrégation

1 : avg();


  select * from employee where sal >= 6000;
  select avg(sal) from employee where sal >= 6000;
Copier après la connexion

2 : compte()


  select count(*) from employee;
  select count(emp_name) from employee;
  select count(sal) from employee;   --打印9 这里会忽略null值
  select count(*) from employee where sal >= 4000;
  select count(*) from employee where sal <= 4000 or sal is null;
Copier après la connexion

3 : somme( )

select sum(sal) from employee where sal >= 6000;
Copier après la connexion

4 : min( )

 select min(sal) from employee;
Copier après la connexion

5 : max()

 select max(sal) from employee;
Copier après la connexion

*** ***************** ********************************** **************** *********************************** ********

Fonction Date

1 : Obtenez la date et l'heure actuelles


  select now(), sysdate(), current_timestamp();
  select now(6), sysdate(6), current_timestamp(6);
  ps: now(), current_timestamp();没有区别, 表示sql开始执行时的时间
    sysdate()表示这个函数开始时间
Copier après la connexion

2 : Obtenez l'heure actuelle date

select curdate(); 
  --只有年月日
Copier après la connexion

3 : Obtenir l'heure actuelle

select curtime(); 
  --只有时分秒
Copier après la connexion

4 : Opération d'ajout de date date_add


  select history, date_add(history, interval &#39;1 12:10&#39; day_minute) from employee;  --date_add(history, interval &#39;1 12:10&#39; day_minute)
  select history, date_add(history, interval &#39;1-1&#39; year_month) from employee;    --date_add(history, interval &#39;1-1&#39; year_month)
  select history, date_add(history, interval &#39;1&#39; second) from employee;       --date_add(history, interval &#39;1&#39; second)
Copier après la connexion

5 : Soustraction de date data_sub

select history, date_sub(history, interval &#39;1-1&#39; year_month) from employee;
Copier après la connexion

6 : Calculer la différence de date

 select history, sysdate(), datediff(sysdate(), history) from employee;     --以天数来表示
Copier après la connexion

7 : Obtenir la partie spécifiée du date (convertir la date au format spécifié) date_format()


  select history, date_format(history, &#39;%Y年%m月%d号&#39;) from employee;
  select history, date_format(history, &#39;%d号&#39;) from employee;
  select history, date_format(history, &#39;%Y年%m月%d号 %H时%i分%s秒&#39;) from employee;
Copier après la connexion

8 : Calculer Obtenez le jour de la semaine pour une date

select history, dayname(history) from employee;
Copier après la connexion

9 : conversion de chaîne de date chinoise date str_to_date()


  insert into employee values(11, &#39;张飞&#39;, &#39;男&#39;, 22, 3000, &#39;2017年02月01号&#39;);  --报错
  insert into employee values(11, &#39;张飞&#39;, &#39;男&#39;, 22, 3000, str_to_date(&#39;2017年02月01号&#39;, &#39;%Y年%m月%d号 %H时%i分%s秒&#39;));
Copier après la connexion

insérer dans les valeurs des employés (12, 'Deuxième frère' , 'Homme', 22, 3000, str_to_date('01 février 2017, 23:02:02', '%Y année %m mois %d numéro %H heure %i minutes %s secondes'));
insérer dans les valeurs des employés (12, 'Deuxième frère', 'Homme', 22, 3000, str_to_date('01 février 2017 11:02:02', '%Y année %m mois %d numéro %h heure %i minute %s seconde'));
ps : Si c'est h, ça veut dire 12 heures, si c'est un grand H, ça veut dire 24 heures;

Fonction chaîne

1 : left(str, len) renvoie les caractères len de l'extrémité gauche de la chaîne str

select left(&#39;abcdefg&#39;, 5);
Copier après la connexion

2 : length()

select length(&#39;abcdefg&#39;);
Copier après la connexion

3 : lower(str) renvoie la chaîne minuscule str

 select lower(&#39;HELLO&#39;);
Copier après la connexion

4 : substring() prend la sous-chaîne, le deuxième paramètre est la position de départ de l'interception et le troisième paramètre est la longueur à intercepter

select substring(&#39;helloworld&#39;,2,3);
Copier après la connexion

5 : concaténation de chaînes concat()

 select concat(emp_name, &#39;员工&#39;) from employee;
Copier après la connexion

6 : replace(replace

select replace(emp_name, &#39;李&#39;, &#39;老&#39;) from employee where emp_name = &#39;李四&#39;;
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!