Maison  >  Article  >  base de données  >  Résumé des opérateurs et fonctions Mysql

Résumé des opérateurs et fonctions Mysql

黄舟
黄舟original
2017-09-20 11:18:041200parcourir

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');

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


  select * from employee where sal = 3800;
  select * from employee where sal = null;   --这里查询不到为null的数据

2 : égal à ( 96b4fef55684b9312718d5de63fb7121 )


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

3 : est le jugement (nul)


  select * from employee where sal is null;
  select * from employee where sal is not null;

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


  select * from employee where isnull(sal);
  select * from employee where !isnull(sal);

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

select * from employee where sal between 4500 and 5000;

6 : Pas dans l'intervalle

select * from employee where sal not between 4500 and 5000;
  --null不为包括进去

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;;

8 : inférieur à (2eb30e039d40148130688b40ccdb3219), inférieur ou égal à (f89ebc05ce91ef82dfede11a5db7f9ae=)

select * from employee where sal >= 4500;

<span style="font-family : " microsoft yahei sans gb 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();  --可以简写

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;  --列名可以起一个别名

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);

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);

5 : valeur absolue abs()


  select 5-10;
  select abs(5-10);

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

Fonction d'agrégation

1 : avg();


  select * from employee where sal >= 6000;
  select avg(sal) from employee where sal >= 6000;

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;

3 : somme( )

select sum(sal) from employee where sal >= 6000;

4 : min( )

 select min(sal) from employee;

5 : max()

 select max(sal) from employee;

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

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()表示这个函数开始时间

2 : Obtenez l'heure actuelle date

select curdate(); 
  --只有年月日

3 : Obtenir l'heure actuelle

select curtime(); 
  --只有时分秒

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)

5 : Soustraction de date data_sub

select history, date_sub(history, interval &#39;1-1&#39; year_month) from employee;

6 : Calculer la différence de date

 select history, sysdate(), datediff(sysdate(), history) from employee;     --以天数来表示

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;

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

select history, dayname(history) from employee;

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;));

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);

2 : length()

select length(&#39;abcdefg&#39;);

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

 select lower(&#39;HELLO&#39;);

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);

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

 select concat(emp_name, &#39;员工&#39;) from employee;

6 : replace(replace

select replace(emp_name, &#39;李&#39;, &#39;老&#39;) from employee where emp_name = &#39;李四&#39;;

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!

Déclaration:
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