MySQL运算符,函数,索引,图形化管理工具

文章目录

  • 运算符
    • 算术运算符
    • 比较运算符
    • 逻辑运算符
    • MySQL运算符
    • 数字函数
    • 字符串函数
    • 日期时间函数
    • 条件函数
    • 系统信息函数
    • 加密函数
    • 其他常用函数
  • MySQL索引
    • 索引的概念
  • 索引的分类
  • 创建索引
    • 创建表时创建索引
    • 在已经存在的表上创建索引
    • 删除索引
  • MySQL图形化管理工具
    • PHPMyAdmin
    • SQLyog

运算符

算术运算符

在这里插入图片描述
(1)加、减、乘、除

mysql> SELECT 1+1,1-1,2*4,3/8;
+-----+-----+-----+--------+
| 1+1 | 1-1 | 2*4 | 3/8    |
+-----+-----+-----+--------+
|   2 |   0 |   8 | 0.3750 |
+-----+-----+-----+--------+
1 row in set (0.09 sec)

2)被除数是0时返回NULL

mysql> SELECT 3/0;
+------+
| 3/0  |
+------+
| NULL |
+------+
1 row in set (0.00 sec)mysql> SELECT 4 DIV 2;
+---------+
| 4 DIV 2 |
+---------+
|       2 |
+---------+
1 row in set (0.00 sec)

(3)取余数

mysql> SELECT 3%8;
+------+
| 3%8  |
+------+
|    3 |
+------+
1 row in set (0.00 sec)mysql> SELECT 3 MOD 8;
+---------+
| 3 MOD 8 |
+---------+
|       3 |
+---------+
1 row in set (0.00 sec)

(4) SQL的字符串转换功能

mysql> SELECT 1+'3MAIZI';
+------------+
| 1+'3MAIZI' |
+------------+
|          4 |
+------------+
1 row in set, 1 warning (0.03 sec)

(5)和NULL进行算数运算结果仍未NULL

mysql> SELECT 1+NULL;
+--------+
| 1+NULL |
+--------+
|   NULL |
+--------+
1 row in set (0.00 sec)mysql> SELECT NULL+NULL;
+-----------+
| NULL+NULL |
+-----------+
|      NULL |
+-----------+
1 row in set (0.00 sec)

比较运算符

在这里插入图片描述
(1)=, 比较字符串或数值是否相等,数值可直接和等值的字符串进行比较

mysql> SELECT 1=1;
+-----+
| 1=1 |
+-----+
|   1 |
+-----+
1 row in set (0.00 sec)mysql> SELECT 1=1,1='1';
+-----+-------+
| 1=1 | 1='1' |
+-----+-------+
|   1 |     1 |
+-----+-------+
1 row in set (0.00 sec)mysql> SELECT 1=1,1='1',1=2;
+-----+-------+-----+
| 1=1 | 1='1' | 1=2 |
+-----+-------+-----+
|   1 |     1 |   0 |
+-----+-------+-----+
1 row in set (0.00 sec)mysql> SELECT username,username='king' FROM student;
+----------+-----------------+
| username | username='king' |
+----------+-----------------+
| king     |               1 |
| king1    |               0 |
| king2    |               0 |
| king3    |               0 |
| king4    |               0 |
| king5    |               0 |
| king6    |               0 |
| king7    |               0 |
| king8    |               0 |
+----------+-----------------+
9 rows in set (0.00 sec)mysql> SELECT username,username!='king' FROM student;
+----------+------------------+
| username | username!='king' |
+----------+------------------+
| king     |                0 |
| king1    |                1 |
| king2    |                1 |
| king3    |                1 |
| king4    |                1 |
| king5    |                1 |
| king6    |                1 |
| king7    |                1 |
| king8    |                1 |
+----------+------------------+
9 rows in set (0.00 sec)

(2)和NULL比较是否相等时要用<=>而不是=

mysql> SELECT id,username,age,sex,sex<=>NULL FROM cms_user;
+----+-----------+------+--------+------------+
| id | username  | age  | sex    | sex<=>NULL |
+----+-----------+------+--------+------------+
|  1 | 张三      |   21 ||          0 |
|  2 | 张三丰    |   31 ||          0 |
|  3 | 章子怡    |   43 ||          0 |
|  4 | long      |   41 ||          0 |
|  5 | ring      |    9 ||          0 |
|  6 | queen     |   77 ||          0 |
|  8 | blek      |   85 ||          0 |
|  9 | rose      |    9 ||          0 |
| 10 | lily      |   39 ||          0 |
| 11 | john      |   72 | 保密   |          0 |
| 12 | test1     | NULL | 保密   |          0 |
| 13 | TEST2     |   18 | NULL   |          1 |
| 14 | lll       |   18 | NULL   |          1 |
| 15 | ttt       |   18 | NULL   |          1 |
| 16 | ooo       |   18 | NULL   |          1 |
+----+-----------+------+--------+------------+
15 rows in set (0.00 sec)

(3)>, <, >=, <=

mysql> SELECT id,username,score,score>=70 FROM student;
+----+----------+-------+-----------+
| id | username | score | score>=70 |
+----+----------+-------+-----------+
|  1 | king     |    95 |         1 |
|  2 | king1    |    35 |         0 |
|  3 | king2    |    45 |         0 |
|  4 | king3    |    55 |         0 |
|  5 | king4    |    65 |         0 |
|  6 | king5    |    75 |         1 |
|  7 | king6    |    80 |         1 |
|  8 | king7    |    90 |         1 |
|  9 | king8    |    25 |         0 |
+----+----------+-------+-----------+
9 rows in set (0.00 sec)

(4)IS NULL, IS NOT NULL

mysql> SELECT id,username,age,age IS NULL FROM cms_user;
+----+-----------+------+-------------+
| id | username  | age  | age IS NULL |
+----+-----------+------+-------------+
|  1 | 张三      |   21 |           0 |
|  2 | 张三丰    |   31 |           0 |
|  3 | 章子怡    |   43 |           0 |
|  4 | long      |   41 |           0 |
|  5 | ring      |    9 |           0 |
|  6 | queen     |   77 |           0 |
|  8 | blek      |   85 |           0 |
|  9 | rose      |    9 |           0 |
| 10 | lily      |   39 |           0 |
| 11 | john      |   72 |           0 |
| 12 | test1     | NULL |           1 |
| 13 | TEST2     |   18 |           0 |
| 14 | lll       |   18 |           0 |
| 15 | ttt       |   18 |           0 |
| 16 | ooo       |   18 |           0 |
+----+-----------+------+-------------+
15 rows in set (0.00 sec)mysql> SELECT id,username,age,age IS NOT NULL FROM cms_user;
+----+-----------+------+-----------------+
| id | username  | age  | age IS NOT NULL |
+----+-----------+------+-----------------+
|  1 | 张三      |   21 |               1 |
|  2 | 张三丰    |   31 |               1 |
|  3 | 章子怡    |   43 |               1 |
|  4 | long      |   41 |               1 |
|  5 | ring      |    9 |               1 |
|  6 | queen     |   77 |               1 |
|  8 | blek      |   85 |               1 |
|  9 | rose      |    9 |               1 |
| 10 | lily      |   39 |               1 |
| 11 | john      |   72 |               1 |
| 12 | test1     | NULL |               0 |
| 13 | TEST2     |   18 |               1 |
| 14 | lll       |   18 |               1 |
| 15 | ttt       |   18 |               1 |
| 16 | ooo       |   18 |               1 |
+----+-----------+------+-----------------+
15 rows in set (0.00 sec)

(5)BETWEEN…AND…

mysql> SELECT id,username,age,age BETWEEN 10 AND 30 FROM cms_user;
+----+-----------+------+-----------------------+
| id | username  | age  | age BETWEEN 10 AND 30 |
+----+-----------+------+-----------------------+
|  1 | 张三      |   21 |                     1 |
|  2 | 张三丰    |   31 |                     0 |
|  3 | 章子怡    |   43 |                     0 |
|  4 | long      |   41 |                     0 |
|  5 | ring      |    9 |                     0 |
|  6 | queen     |   77 |                     0 |
|  8 | blek      |   85 |                     0 |
|  9 | rose      |    9 |                     0 |
| 10 | lily      |   39 |                     0 |
| 11 | john      |   72 |                     0 |
| 12 | test1     | NULL |                  NULL |
| 13 | TEST2     |   18 |                     1 |
| 14 | lll       |   18 |                     1 |
| 15 | ttt       |   18 |                     1 |
| 16 | ooo       |   18 |                     1 |
+----+-----------+------+-----------------------+
15 rows in set (0.02 sec)

(6)IN

mysql> SELECT id,username,age,age IN(21,31,41,51) FROM cms_user;
+----+-----------+------+---------------------+
| id | username  | age  | age IN(21,31,41,51) |
+----+-----------+------+---------------------+
|  1 | 张三      |   21 |                   1 |
|  2 | 张三丰    |   31 |                   1 |
|  3 | 章子怡    |   43 |                   0 |
|  4 | long      |   41 |                   1 |
|  5 | ring      |    9 |                   0 |
|  6 | queen     |   77 |                   0 |
|  8 | blek      |   85 |                   0 |
|  9 | rose      |    9 |                   0 |
| 10 | lily      |   39 |                   0 |
| 11 | john      |   72 |                   0 |
| 12 | test1     | NULL |                NULL |
| 13 | TEST2     |   18 |                   0 |
| 14 | lll       |   18 |                   0 |
| 15 | ttt       |   18 |                   0 |
| 16 | ooo       |   18 |                   0 |
+----+-----------+------+---------------------+
15 rows in set (0.00 sec)mysql> SELECT 1 IN (1,2,3);
+--------------+
| 1 IN (1,2,3) |
+--------------+
|            1 |
+--------------+
1 row in set (0.00 sec)mysql> SELECT 11 IN (1,2,3);
+---------------+
| 11 IN (1,2,3) |
+---------------+
|             0 |
+---------------+
1 row in set (0.00 sec)

(7)LIKE

mysql> SELECT 's' LIKE '_';
+--------------+
| 's' LIKE '_' |
+--------------+
|            1 |
+--------------+
1 row in set (0.00 sec)mysql> SELECT 'sD' LIKE '_';
+---------------+
| 'sD' LIKE '_' |
+---------------+
|             0 |
+---------------+
1 row in set (0.00 sec)mysql> SELECT id,username,username LIKE '____' FROM cms_user;
+----+-----------+----------------------+
| id | username  | username LIKE '____' |
+----+-----------+----------------------+
|  8 | blek      |                    1 |
| 11 | john      |                    1 |
| 10 | lily      |                    1 |
| 14 | lll       |                    0 |
|  4 | long      |                    1 |
| 16 | ooo       |                    0 |
|  6 | queen     |                    0 |
|  5 | ring      |                    1 |
|  9 | rose      |                    1 |
| 12 | test1     |                    0 |
| 13 | TEST2     |                    0 |
| 15 | ttt       |                    0 |
|  1 | 张三      |                    0 |
|  2 | 张三丰    |                    0 |
|  3 | 章子怡    |                    0 |
+----+-----------+----------------------+
15 rows in set (0.00 sec)

8)REGEXP

mysql> SELECT id,username,username REGEXP '^t' FROM cms_user;
+----+-----------+----------------------+
| id | username  | username REGEXP '^t' |
+----+-----------+----------------------+
|  8 | blek      |                    0 |
| 11 | john      |                    0 |
| 10 | lily      |                    0 |
| 14 | lll       |                    0 |
|  4 | long      |                    0 |
| 16 | ooo       |                    0 |
|  6 | queen     |                    0 |
|  5 | ring      |                    0 |
|  9 | rose      |                    0 |
| 12 | test1     |                    1 |
| 13 | TEST2     |                    1 |
| 15 | ttt       |                    1 |
|  1 | 张三      |                    0 |
|  2 | 张三丰    |                    0 |
|  3 | 章子怡    |                    0 |
+----+-----------+----------------------+
15 rows in set (0.00 sec)

逻辑运算符

1)&&,AND,||,OR(和NULL运算时结果为NULL,但真值和NULL取或时结果为真)

mysql> SELECT 2&&2;
+------+
| 2&&2 |
+------+
|    1 |
+------+
1 row in set (0.00 sec)mysql> SELECT 2&&2,2&&0;
+------+------+
| 2&&2 | 2&&0 |
+------+------+
|    1 |    0 |
+------+------+
1 row in set (0.00 sec)mysql> SELECT 2&&2,2&&0,2&&NULL,1||1,1||0,1||NULL,0||NULL;
+------+------+---------+------+------+---------+---------+
| 2&&2 | 2&&0 | 2&&NULL | 1||1 | 1||0 | 1||NULL | 0||NULL |
+------+------+---------+------+------+---------+---------+
|    1 |    0 |    NULL |    1 |    1 |       1 |    NULL |
+------+------+---------+------+------+---------+---------+
1 row in set (0.00 sec)

(2)!,NOT

mysql> SELECT NULL&&1;
+---------+
| NULL&&1 |
+---------+
|    NULL |
+---------+
1 row in set (0.00 sec)mysql> SELECT !1,!0,!NULL;
+----+----+-------+
| !1 | !0 | !NULL |
+----+----+-------+
|  0 |  1 |  NULL |
+----+----+-------+
1 row in set (0.00 sec)

3)XOR

mysql> SELECT 1XOR0,0XOR1,1XOR1,0XOR0;
ERROR 1054 (42S22): Unknown column '1XOR0' in 'field list'
mysql> SELECT 1 XOR 0,0 XOR 1 ,1 XOR 1,0 XOR 0;
+---------+---------+---------+---------+
| 1 XOR 0 | 0 XOR 1 | 1 XOR 1 | 0 XOR 0 |
+---------+---------+---------+---------+
|       1 |       1 |       0 |       0 |
+---------+---------+---------+---------+
1 row in set (0.00 sec)

MySQL运算符

数字函数

在这里插入图片描述
(1)CEIL():进一取整

mysql> SELECT CEIL(1.2),CEILING(1.2);
+-----------+--------------+
| CEIL(1.2) | CEILING(1.2) |
+-----------+--------------+
|         2 |            2 |
+-----------+--------------+
1 row in set (0.00 sec)mysql> SELECT *FROM test4;
+------+------+------+
| num1 | num2 | num3 |
+------+------+------+
| 3.14 | 3.14 | 3.14 |
| 3.25 | 3.25 | 3.25 |
+------+------+------+
2 rows in set (0.07 sec)mysql> SELECT num1,CEIL(num2),CEILING(num3) FROM test4;
+------+------------+---------------+
| num1 | CEIL(num2) | CEILING(num3) |
+------+------------+---------------+
| 3.14 |          4 |             4 |
| 3.25 |          4 |             4 |
+------+------------+---------------+
2 rows in set (0.00 sec)

(2)FLOOR():舍一取整

mysql> SELECT FLOOR(3.14);
+-------------+
| FLOOR(3.14) |
+-------------+
|           3 |
+-------------+
1 row in set (0.00 sec)

3)MOD:取余数(去模)

mysql> SELECT MOD(3,8);
+----------+
| MOD(3,8) |
+----------+
|        3 |
+----------+
1 row in set (0.00 sec)

(4)POWER():幂运算

mysql> SELECT POW(2,3),POWER(3,3);
+----------+------------+
| POW(2,3) | POWER(3,3) |
+----------+------------+
|        8 |         27 |
+----------+------------+
1 row in set (0.06 sec)

5)ROUND():四舍五入

mysql> SELECT ROUND(3.14567,2);
+------------------+
| ROUND(3.14567,2) |
+------------------+
|             3.15 |
+------------------+
1 row in set (0.02 sec)

(6)TRUNCATE():数字截取

mysql> SELECT TRUNCATE(3.14567,2);
+---------------------+
| TRUNCATE(3.14567,2) |
+---------------------+
|                3.14 |
+---------------------+
1 row in set (0.00 sec)

(7)ABS():取绝对值

mysql> SELECT ABS(-12);
+----------+
| ABS(-12) |
+----------+
|       12 |
+----------+
1 row in set (0.00 sec)

(8)PI():圆周率

mysql> SELECT PI();
+----------+
| PI()     |
+----------+
| 3.141593 |
+----------+
1 row in set (0.01 sec)

(9)RAND()和RAND(x):返回0~1之间的随机数,RAND(x)x相同时返回的随机数相同

mysql> SELECT RAND();
+--------------------+
| RAND()             |
+--------------------+
| 0.6808652986594153 |
+--------------------+
1 row in set (0.00 sec)mysql> SELECT RAND();
+--------------------+
| RAND()             |
+--------------------+
| 0.7984468916416605 |
+--------------------+
1 row in set (0.00 sec)mysql> SELECT RAND(1);
+---------------------+
| RAND(1)             |
+---------------------+
| 0.40540353712197724 |
+---------------------+
1 row in set (0.00 sec)mysql> SELECT RAND(1);
+---------------------+
| RAND(1)             |
+---------------------+
| 0.40540353712197724 |
+---------------------+
1 row in set (0.00 sec)

(10)SIGN(x):返回x的符号,x为负数、0、正数分别返回-1、0、1

mysql> SELECT SIGN(12),SIGN(0),SIGN(-12);
+----------+---------+-----------+
| SIGN(12) | SIGN(0) | SIGN(-12) |
+----------+---------+-----------+
|        1 |       0 |        -1 |
+----------+---------+-----------+
1 row in set (0.00 sec)

(11)EXP(x):计算e的几次方

mysql> SELECT EXP(3);
+--------------------+
| EXP(3)             |
+--------------------+
| 20.085536923187668 |
+--------------------+
1 row in set (0.03 sec)

字符串函数

在这里插入图片描述
在这里插入图片描述
(1)CHAR_LENGTH(S):返回字符串的字符数;LENGTH:返回字符串长度

mysql> SELECT CHAR_LENGTH('maizi'),LENGTH('maizi');
+----------------------+-----------------+
| CHAR_LENGTH('maizi') | LENGTH('maizi') |
+----------------------+-----------------+
|                    5 |               5 |
+----------------------+-----------------+
1 row in set (0.00 sec)mysql> SELECT CHAR_LENGTH('啊'),LENGTH('啊');
+--------------------+---------------+
| CHAR_LENGTH('啊')  | LENGTH('啊')  |
+--------------------+---------------+
|                  1 |             3 |
+--------------------+---------------+
1 row in set (0.00 sec)

2)CONTACT(S1, S2…):将字符串合并为一个字符串,和NULL连接时结果为NULL

mysql> SELECT CONCAT('HELLO','WORLD');
+-------------------------+
| CONCAT('HELLO','WORLD') |
+-------------------------+
| HELLOWORLD              |
+-------------------------+
1 row in set (0.02 sec)mysql> USE cms;
Database changed
mysql> SELECT * FROM student;
+----+----------+-------+
| id | username | score |
+----+----------+-------+
|  1 | king     |    95 |
|  2 | king1    |    35 |
|  3 | king2    |    45 |
|  4 | king3    |    55 |
|  5 | king4    |    65 |
|  6 | king5    |    75 |
|  7 | king6    |    80 |
|  8 | king7    |    90 |
|  9 | king8    |    25 |
+----+----------+-------+
9 rows in set (0.00 sec)mysql> SELECT id,CONCAT(username,'_')FROM student;
+----+----------------------+
| id | CONCAT(username,'_') |
+----+----------------------+
|  1 | king_                |
|  2 | king1_               |
|  3 | king2_               |
|  4 | king3_               |
|  5 | king4_               |
|  6 | king5_               |
|  7 | king6_               |
|  8 | king7_               |
|  9 | king8_               |
+----+----------------------+
9 rows in set (0.00 sec)mysql> SELECT CONCAT('a','b',null);
+----------------------+
| CONCAT('a','b',null) |
+----------------------+
| NULL                 |
+----------------------+
1 row in set (0.00 sec)

3)CONTACT_WS(X, S1, S2…):将制定分隔符连接字符串,当X为NULL时,连接结果为NULL,当S1或S2…为NULL时当做空字符处理

mysql> SELECT CONCAT_WS('^_^','a','b','c');
+------------------------------+
| CONCAT_WS('^_^','a','b','c') |
+------------------------------+
| a^_^b^_^c                    |
+------------------------------+
1 row in set (0.00 sec)mysql> SELECT CONCAT_WS('','a','b','c');
+---------------------------+
| CONCAT_WS('','a','b','c') |
+---------------------------+
| abc                       |
+---------------------------+
1 row in set (0.00 sec)mysql> SELECT CONCAT_WS(NULL,'a','b','c');
+-----------------------------+
| CONCAT_WS(NULL,'a','b','c') |
+-----------------------------+
| NULL                        |
+-----------------------------+
1 row in set (0.00 sec)mysql> SELECT CONCAT_WS('^_^','a','b','c',NULL);
+-----------------------------------+
| CONCAT_WS('^_^','a','b','c',NULL) |
+-----------------------------------+
| a^_^b^_^c                         |
+-----------------------------------+
1 row in set (0.00 sec)

4)UPPER(S)/UCASE(S):将字符转换为大写

mysql> SELECT UPPER('this is a test'),UCASE('this is a test');
+-------------------------+-------------------------+
| UPPER('this is a test') | UCASE('this is a test') |
+-------------------------+-------------------------+
| THIS IS A TEST          | THIS IS A TEST          |
+-------------------------+-------------------------+
1 row in set (0.00 sec)

(5)LOWER(S)/LCASE(S):将字符转换为小写

mysql> SELECT LOWER('HELLO WORLD'),LCASE('HELLO WORLD');
+----------------------+----------------------+
| LOWER('HELLO WORLD') | LCASE('HELLO WORLD') |
+----------------------+----------------------+
| hello world          | hello world          |
+----------------------+----------------------+
1 row in set (0.00 sec)

(6)LEFT(S, N)/RIGHT(S, N):返回字符串的前/后n个字符

mysql> SELECT LEFT('ABCDEF',2),RIGHT('ABCDEF',2);
+------------------+-------------------+
| LEFT('ABCDEF',2) | RIGHT('ABCDEF',2) |
+------------------+-------------------+
| AB               | EF                |
+------------------+-------------------+
1 row in set (0.01 sec)

(7)LPAD(S1, LEN, S2)/ RPAD(S1, LEN, S2):将字符串S1用S2填充到指定的LEN

mysql> SELECT LPAD('A',5,'?'),RPAD('A',5,'!');
+-----------------+-----------------+
| LPAD('A',5,'?') | RPAD('A',5,'!') |
+-----------------+-----------------+
| ????A           | A!!!!           |
+-----------------+-----------------+
1 row in set (0.04 sec)

(8)LTRIN(S)/ RTRIM(S)/ TRIM(S):去掉字符串中的空格

mysql> SELECT CONCAT('_',TRIM(' ABC '),'_'),CONCAT('_',LTRIM(' ABC '),'_'),CONCAT('_',RTRIM(' ABC '),'_');
+-------------------------------+--------------------------------+--------------------------------+
| CONCAT('_',TRIM(' ABC '),'_') | CONCAT('_',LTRIM(' ABC '),'_') | CONCAT('_',RTRIM(' ABC '),'_') |
+-------------------------------+--------------------------------+--------------------------------+
| _ABC_                         | _ABC _                         | _ ABC_                         |
+-------------------------------+--------------------------------+--------------------------------+
1 row in set (0.00 sec)

(9)TRIM(S1 FROM S):去掉字符串s中开始处和结尾处的字符串s1

mysql> SELECT TRIM('A' FROM 'ABCBCA');
+-------------------------+
| TRIM('A' FROM 'ABCBCA') |
+-------------------------+
| BCBC                    |
+-------------------------+
1 row in set (0.00 sec)

(10)REPEAT(S,N):重复字符串指定次数

mysql> SELECT REPEAT('H',5);
+---------------+
| REPEAT('H',5) |
+---------------+
| HHHHH         |
+---------------+
1 row in set (0.00 sec)

(11)SPACE(N):返回N个空格

mysql> SELECT CONCAT('_',SPACE(5),'_');
+--------------------------+
| CONCAT('_',SPACE(5),'_') |
+--------------------------+
| _     _                  |
+--------------------------+
1 row in set (0.00 sec)

(12)REPLACE(S,S1,S2):在字符串中搜索S1,替换成S2(区分大小写,若未搜索到则返回原字符串)

mysql> SELECT REPLACE('ABCBCA','A','_');
+---------------------------+
| REPLACE('ABCBCA','A','_') |
+---------------------------+
| _BCBC_                    |
+---------------------------+
1 row in set (0.00 sec)mysql> SELECT REPLACE('ABCBCA','a','_');
+---------------------------+
| REPLACE('ABCBCA','a','_') |
+---------------------------+
| ABCBCA                    |
+---------------------------+
1 row in set (0.00 sec)

(13)STRCMP(S1, S2):比较字符串,不区分大小写,>=<分别返回1,0,-1

mysql> SELECT STRCMP('A','A'),STRCMP('A','a'),STRCMP('B','A');
+-----------------+-----------------+-----------------+
| STRCMP('A','A') | STRCMP('A','a') | STRCMP('B','A') |
+-----------------+-----------------+-----------------+
|               0 |               0 |               1 |
+-----------------+-----------------+-----------------+
1 row in set (0.02 sec)mysql> SELECT STRCMP('A','A'),STRCMP('A','a'),STRCMP('A','B');
+-----------------+-----------------+-----------------+
| STRCMP('A','A') | STRCMP('A','a') | STRCMP('A','B') |
+-----------------+-----------------+-----------------+
|               0 |               0 |              -1 |
+-----------------+-----------------+-----------------+
1 row in set (0.00 sec)

(14)SUBSTRING(S, N, LEN):截取字符串

mysql> SELECT SUBSTRING('ABCDEF',2,2);
+-------------------------+
| SUBSTRING('ABCDEF',2,2) |
+-------------------------+
| BC                      |
+-------------------------+
1 row in set (0.00 sec)

(15)REVERSE(S):反转字符串

mysql> SELECT REVERSE('ABC');
+----------------+
| REVERSE('ABC') |
+----------------+
| CBA            |
+----------------+
1 row in set (0.00 sec)

(16)ELT(N, S1, S2):返回指定位置的字符串

mysql> SELECT ELT(2,'A','B','C');
+--------------------+
| ELT(2,'A','B','C') |
+--------------------+
| B                  |
+--------------------+
1 row in set (0.00 sec)

日期时间函数

在这里插入图片描述
在这里插入图片描述
(1)CURDATE(), CURRENT_DATE():返回当前日期

mysql> SELECT CURDATE(),CURRENT_DATE();
+------------+----------------+
| CURDATE()  | CURRENT_DATE() |
+------------+----------------+
| 2020-03-27 | 2020-03-27    |
+------------+----------------+
1 row in set (0.04 sec)

(2)CURTIME(), CURRENT_TIME():返回当前时间

mysql> SELECT CURTIME(),CURRENT_TIME();
+-----------+----------------+
| CURTIME() | CURRENT_TIME() |
+-----------+----------------+
| 15:59:32  | 15:59:32       |
+-----------+----------------+
1 row in set (0.00 sec)

(3)NOW():返回当前日期和时间

mysql> SELECT NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2020-03-27 15:59:37 |
+---------------------+
1 row in set (0.00 sec)

(4)MONTH(D):返回当前日期中月份的值

mysql> SELECT MONTH('2015-1-3');
+-------------------+
| MONTH('2015-3-27') |
+-------------------+
|                 3 |
+-------------------+
1 row in set (0.00 sec)mysql> SELECT MONTH(NOW());
+--------------+
| MONTH(NOW()) |
+--------------+
|            3 |
+--------------+
1 row in set (0.00 sec)

(5)MONTHNAME(D):返回日期中月份名称

mysql> SELECT MONTHNAME(NOW());
+------------------+
| MONTHNAME(NOW()) |
+------------------+
| March            |
+------------------+
1 row in set (0.09 sec)

(6)DAYNAME(D):返回日期是几

mysql> SELECT DAYNAME(NOW());
+----------------+
| DAYNAME(NOW()) |
+----------------+
| Friday       |
+----------------+
1 row in set (0.02 sec)

(7)DAYOFWEEK(D):返回一周内的第几天,1代表星期日

mysql> SELECT DAYOFWEEK(NOW());
+------------------+
| DAYOFWEEK(NOW()) |
+------------------+
|                6 |
+------------------+
1 row in set (0.00 sec)

(8)WEEKDAY(D):返回日期是星期几,0代表星期一

mysql> SELECT WEEKDAY(NOW());
+----------------+
| WEEKDAY(NOW()) |
+----------------+
|              6 |
+----------------+
1 row in set (0.00 sec)

(9)WEEK(D):一年中的第几个星期

mysql> SELECT WEEK(NOW());
+-------------+
| WEEK(NOW()) |
+-------------+
|           14 |
+-------------+
1 row in set (0.00 sec)

(10)YEAR(D):返回年份值

mysql> SELECT YEAR(NOW());
+-------------+
| YEAR(NOW()) |
+-------------+
|        2020 |
+-------------+
1 row in set (0.00 sec)

(11)HOUR(T):返回小时值

mysql> SELECT HOUR(NOW());
+-------------+
| HOUR(NOW()) |
+-------------+
|          16 |
+-------------+
1 row in set (0.00 sec)

(12)MINUTE(T):返回分钟值

mysql> SELECT MINUTE(NOW());
+---------------+
| MINUTE(NOW()) |
+---------------+
|             1 |
+---------------+
1 row in set (0.00 sec)

(13)SECOND(T):返回秒数

mysql> SELECT SECOND(NOW());
+---------------+
| SECOND(NOW()) |
+---------------+
|            49 |
+---------------+
1 row in set (0.00 sec)

(14)DATEDIFF(D1, D2):计算量日期之间相隔的天数

mysql> SELECT DATEDIFF(CURRENT_DATE(),'1990-1-1');
+-------------------------------------+
| DATEDIFF(CURRENT_DATE(),'1990-1-1') |
+-------------------------------------+
|                                9133 |
+-------------------------------------+
1 row in set (0.02 sec)

条件函数

在这里插入图片描述
(1)IF(EXPR, V1, V2):如果表达式EXPR成立,则返回结果V1,否则返回V2

mysql> USE cms;
Database changed
mysql> SELECT * FROM student;
+----+----------+-------+
| id | username | score |
+----+----------+-------+
|  1 | king     |    95 |
|  2 | king1    |    35 |
|  3 | king2    |    45 |
|  4 | king3    |    55 |
|  5 | king4    |    65 |
|  6 | king5    |    75 |
|  7 | king6    |    80 |
|  8 | king7    |    90 |
|  9 | king8    |    25 |
+----+----------+-------+
9 rows in set (0.00 sec)mysql> SELECT id,username,score,IF(score>=60,'及格','不及格')FROM student;
+----+----------+-------+------------------------------------+
| id | username | score | IF(score>=60,'及格','不及格')      |
+----+----------+-------+------------------------------------+
|  1 | king     |    95 | 及格                               |
|  2 | king1    |    35 | 不及格                             |
|  3 | king2    |    45 | 不及格                             |
|  4 | king3    |    55 | 不及格                             |
|  5 | king4    |    65 | 及格                               |
|  6 | king5    |    75 | 及格                               |
|  7 | king6    |    80 | 及格                               |
|  8 | king7    |    90 | 及格                               |
|  9 | king8    |    25 | 不及格                             |
+----+----------+-------+------------------------------------+
9 rows in set (0.03 sec)

(2)IFNULL(V1,V2):如果V1不为空,就显示V1的值,否则显示V2的值

mysql> SELECT id,username,age,IFNULL(age,'100')FROM cms_user;
+----+-----------+------+-------------------+
| id | username  | age  | IFNULL(age,'100') |
+----+-----------+------+-------------------+
|  1 | 张三      |   21 | 21                |
|  2 | 张三丰    |   31 | 31                |
|  3 | 章子怡    |   43 | 43                |
|  4 | long      |   41 | 41                |
|  5 | ring      |    9 | 9                 |
|  6 | queen     |   77 | 77                |
|  8 | blek      |   85 | 85                |
|  9 | rose      |    9 | 9                 |
| 10 | lily      |   39 | 39                |
| 11 | john      |   72 | 72                |
| 12 | test1     | NULL | 100               |
| 13 | TEST2     |   18 | 18                |
| 14 | lll       |   18 | 18                |
| 15 | ttt       |   18 | 18                |
| 16 | ooo       |   18 | 18                |
+----+-----------+------+-------------------+
15 rows in set (0.00 sec)

(3)CASE WHEN exp1 THEN vi [WHEN exp2 THEN v2] [ELSE vn] END

mysql> SELECT id,username,score, CASE WHEN score>60 THEN '不错' WHEN score=60 THEN '刚及格' ELSE '没及格' END FROM student;
+----+----------+-------+--------------------------------------------------------------------------------------+
| id | username | score | CASE WHEN score>60 THEN '不错' WHEN score=60 THEN '刚及格' ELSE '没及格' END         |
+----+----------+-------+--------------------------------------------------------------------------------------+
|  1 | king     |    95 | 不错                                                                                 |
|  2 | king1    |    35 | 没及格                                                                               |
|  3 | king2    |    45 | 没及格                                                                               |
|  4 | king3    |    55 | 没及格                                                                               |
|  5 | king4    |    65 | 不错                                                                                 |
|  6 | king5    |    75 | 不错                                                                                 |
|  7 | king6    |    80 | 不错                                                                                 |
|  8 | king7    |    90 | 不错                                                                                 |
|  9 | king8    |    25 | 没及格                                                                               |
+----+----------+-------+--------------------------------------------------------------------------------------+
9 rows in set (0.00 sec)

系统信息函数

在这里插入图片描述

加密函数

在这里插入图片描述
1)MD5(str):信息摘要算法

mysql> SELECT MD5('ADMIN');
+----------------------------------+
| MD5('ADMIN')                     |
+----------------------------------+
| 73acd9a5972130b75066c82595a1fae3 |
+----------------------------------+
1 row in set (0.07 sec)
mysql> SELECT LENGTH(MD5('ADMIN'));
+----------------------+
| LENGTH(MD5('ADMIN')) |
+----------------------+
|                   32 |
+----------------------+
1 row in set (0.00 sec

)

(2)PASSWORD(str):密码算法(例如对用户设置密码)

mysql> SELECT PASSWORD('root'),PASSWORD('king');
+-------------------------------------------+-------------------------------------------+
| PASSWORD('root')                          | PASSWORD('king')                          |
+-------------------------------------------+-------------------------------------------+
| *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | *0C6F8A2CE8ABFD18609CCE4CDFAB3C15DAD20718 |
+-------------------------------------------+-------------------------------------------+
1 row in set (0.02 sec)

(3)ENCODE(str, pwd_str):加密结果是一二进制数,必须使用BLOB类型保存字段
(4)DECODE(crypt_str, pwd_str):通过对ENCODE加密后的内容进行解密

其他常用函数

在这里插入图片描述
1)FORMAT(x, n):将数字x进行格式化,并将x保留到小数点后n为

mysql> SELECT FORMAT(3.14567,2);
+-------------------+
| FORMAT(3.14567,2) |
+-------------------+
| 3.15              |
+-------------------+
1 row in set (0.00 sec)

(2)ASCII(s):返回字符串的第一个字符的ASCII码

mysql> SELECT ASCII('abc');
+--------------+
| ASCII('abc') |
+--------------+
|           97 |
+--------------+
1 row in set (0.02 sec)

(3)BIN(x):返回x的二进制编码,HEX(x):返回x的十六进制编码,OCT(x):返回x的八进制编码

mysql> SELECT BIN(5),HEX(5),OCT(5);
+--------+--------+--------+
| BIN(5) | HEX(5) | OCT(5) |
+--------+--------+--------+
| 101    | 5      | 5      |
+--------+--------+--------+
1 row in set (0.02 sec)

(4)CONV(x, f1, f2):将x从f1进制数编程f2进制数

mysql> SELECT CONV(5,10,2);
+--------------+
| CONV(5,10,2) |
+--------------+
| 101          |
+--------------+
1 row in set (0.00 sec)mysql> SELECT CONV(35,10,2);
+---------------+
| CONV(35,10,2) |
+---------------+
| 100011        |
+---------------+
1 row in set (0.00 sec)mysql> SELECT CONV(35,10,8);
+---------------+
| CONV(35,10,8) |
+---------------+
| 43            |
+---------------+
1 row in set (0.00 sec)mysql> SELECT CONV(35,10,16);
+----------------+
| CONV(35,10,16) |
+----------------+
| 23             |
+----------------+
1 row in set (0.00 sec)

(5)INET_ATON(IP):将IP地址转换为数字

mysql> SELECT INET_ATON('127.0.0.1');
+------------------------+
| INET_ATON('127.0.0.1') |
+------------------------+
|             2130706433 |
+------------------------+
1 row in set (0.06 sec)

(6)INET_NTOA(n):将数字转换成IP地址

mysql> SELECT INET_NTOA(2130706433);
+-----------------------+
| INET_NTOA(2130706433) |
+-----------------------+
| 127.0.0.1             |
+-----------------------+
1 row in set (0.02 sec)

(7)get_LOCT(name, time):定义锁

mysql> SELECT GET_LOCK('KING',10);
+---------------------+
| GET_LOCK('KING',10) |
+---------------------+
|                   1 |
+---------------------+
1 row in set (0.05 sec)

(8)IS_FREE_LOCK(name):判断锁是否正在使用,0表示正在使用,1表示未在使用,解锁或新建立锁都能使锁脱离被使用的状态

mysql> SELECT IS_FREE_LOCK('KING');
+----------------------+
| IS_FREE_LOCK('KING') |
+----------------------+
|                    0 |
+----------------------+
1 row in set (0.02 sec)mysql> SELECT RELEASE_LOCK('KING');
+----------------------+
| RELEASE_LOCK('KING') |
+----------------------+
|                    1 |
+----------------------+
1 row in set (0.00 sec)mysql> SELECT IS_FREE_LOCK('KING');
+----------------------+
| IS_FREE_LOCK('KING') |
+----------------------+
|                    1 |
+----------------------+
1 row in set (0.00 sec)mysql> SELECT GET_LOCK('MAIZI',10);
+----------------------+
| GET_LOCK('MAIZI',10) |
+----------------------+
|                    1 |
+----------------------+
1 row in set (0.00 sec)mysql> SELECT IS_FREE_LOCK('MAIZI');
+-----------------------+
| IS_FREE_LOCK('MAIZI') |
+-----------------------+
|                     0 |
+-----------------------+
1 row in set (0.00 sec)mysql> SELECT GET_LOCK('AB',5);
+------------------+
| GET_LOCK('AB',5) |
+------------------+
|                1 |
+------------------+
1 row in set (0.00 sec)mysql> SELECT IS_FREE_LOCK('MAIZI');
+-----------------------+
| IS_FREE_LOCK('MAIZI') |
+-----------------------+
|                     1 |
+-----------------------+
1 row in set (0.00 sec)

(9)RELSASE_LOCK(name):解锁

mysql> SELECT RELEASE_LOCK('KING');
+----------------------+
| RELEASE_LOCK('KING') |
+----------------------+
|                    1 |
+----------------------+
1 row in set (0.00 sec)mysql> SELECT IS_FREE_LOCK('KING');
+----------------------+
| IS_FREE_LOCK('KING') |
+----------------------+
|                    1 |
+----------------------+
1 row in set (0.00 sec)

MySQL索引

索引的概念

(1)索引由数据库中的一列或多列组合而成,其作用是提高对表中数据的查询速度
(2)索引的优点是可以提高检索数据的速度
(3)索引的缺点是创建和维护索引需要耗费时间
(4)索引可以提高查询速度,会减慢写入速度

索引的分类

(1)普通索引
(2)唯一索引
(3)全文索引
只有是字符类型且全是英文名时可使用
(4)单列索引
(5)多列索引
(6)空间索引

创建索引

创建表时创建索引

CREATE TABLE tbl_name(
字段名称 字段类型 [完整性约束条件], …, [UNIQUE | FULLTEXT | SPATIAL] INDEX | KEY [索引名称] (字段名称)
)
(1)创建普通索引

mysql> CREATE TABLE test4(-> id TINYINT UNSIGNED,-> username VARCHAR(20),-> INDEX in_id(id),-> KEY in_username(username)-> );
Query OK, 0 rows affected (0.42 sec)mysql> SHOW CREATE TABLE test4;
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                                                                       |
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test4 | CREATE TABLE `test4` (`id` tinyint(3) unsigned DEFAULT NULL,`username` varchar(20) DEFAULT NULL,KEY `in_id` (`id`),KEY `in_username` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.03 sec)

(2)创建唯一索引

mysql> CREATE TABLE test5(-> id TINYINT UNSIGNED AUTO_INCREMENT KEY,-> username VARCHAR(20) NOT NULL UNIQUE,-> card CHAR(18) NOT NULL,-> UNIQUE KEY uni_card(card)-> );
Query OK, 0 rows affected (0.47 sec)mysql> SHOW CREATE TABLE test5;
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                                                                                                                                                |
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test5 | CREATE TABLE `test5` (`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,`username` varchar(20) NOT NULL,`card` char(18) NOT NULL,PRIMARY KEY (`id`),UNIQUE KEY `username` (`username`),UNIQUE KEY `uni_card` (`card`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

(3)创建全文索引

mysql> CREATE TABLE test6(-> id TINYINT UNSIGNED AUTO_INCREMENT KEY,-> username VARCHAR(20) NOT NULL UNIQUE,-> userDesc VARCHAR(20) NOT NULL,-> FULLTEXT INDEX full_userDesc(userDesc)-> );
Query OK, 0 rows affected (2.09 sec)mysql> SHOW CREATE TABLE test6;
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                                                                                                                                                                  |
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test6 | CREATE TABLE `test6` (`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,`username` varchar(20) NOT NULL,`userDesc` varchar(20) NOT NULL,PRIMARY KEY (`id`),UNIQUE KEY `username` (`username`),FULLTEXT KEY `full_userDesc` (`userDesc`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

(4)创建单列索引

mysql> CREATE TABLE test7(-> id TINYINT UNSIGNED AUTO_INCREMENT KEY,-> test1 VARCHAR(20) NOT NULL,-> test2 VARCHAR(20) NOT NULL,-> test3 VARCHAR(20) NOT NULL,-> test4 VARCHAR(20) NOT NULL,-> INDEX in_test1(test1)-> );
Query OK, 0 rows affected (0.38 sec)mysql> SHOW CREATE TABLE test7;
+-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                                                                                                                                                                     |
+-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test7 | CREATE TABLE `test7` (`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,`test1` varchar(20) NOT NULL,`test2` varchar(20) NOT NULL,`test3` varchar(20) NOT NULL,`test4` varchar(20) NOT NULL,PRIMARY KEY (`id`),KEY `in_test1` (`test1`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.02 sec)

(5)创建多列索引

mysql> CREATE TABLE test8(-> id TINYINT UNSIGNED AUTO_INCREMENT KEY,-> test1 VARCHAR(20) NOT NULL,-> test2 VARCHAR(20) NOT NULL,-> test3 VARCHAR(20) NOT NULL,-> test4 VARCHAR(20) NOT NULL,-> INDEX mul_t1_t2_t3(test1,test2,test3)-> );
Query OK, 0 rows affected (0.27 sec)mysql> SHOW CREATE TABLE test8;
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                                                                                                                                                                                         |
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test8 | CREATE TABLE `test8` (`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,`test1` varchar(20) NOT NULL,`test2` varchar(20) NOT NULL,`test3` varchar(20) NOT NULL,`test4` varchar(20) NOT NULL,PRIMARY KEY (`id`),KEY `mul_t1_t2_t3` (`test1`,`test2`,`test3`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)mysql> DESC test8;
+-------+---------------------+------+-----+---------+----------------+
| Field | Type                | Null | Key | Default | Extra          |
+-------+---------------------+------+-----+---------+----------------+
| id    | tinyint(3) unsigned | NO   | PRI | NULL    | auto_increment |
| test1 | varchar(20)         | NO   | MUL | NULL    |                |
| test2 | varchar(20)         | NO   |     | NULL    |                |
| test3 | varchar(20)         | NO   |     | NULL    |                |
| test4 | varchar(20)         | NO   |     | NULL    |                |
+-------+---------------------+------+-----+---------+----------------+
5 rows in set (0.08 sec)

(6)创建空间索引(只能给空间变量创建空间索引)

mysql> CREATE TABLE test10(-> id TINYINT UNSIGNED AUTO_INCREMENT KEY,-> test GEOMETRY NOT NULL,-> SPATIAL INDEX spa_test(test)-> )ENGINE=MyISAM;
Query OK, 0 rows affected (0.06 sec)mysql> SHOW CREATE TABLE test10;
+--------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table  | Create Table                                                                                                                                                                                         |
+--------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| test10 | CREATE TABLE `test10` (`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,`test` geometry NOT NULL,PRIMARY KEY (`id`),SPATIAL KEY `spa_test` (`test`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 |
+--------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.09 sec)

在已经存在的表上创建索引

【1】CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX 索引名称 ON 表名 {字段名称 [(长度)] [ASC|DESC]}
(1)普通索引

CREATE INDEX in_id ON test4(id)

(2)唯一索引

CREATE UNIQUE INDEX uni_username ON test5(username);

(3)全文索引
(4)单列索引
(5)多列索引
(6)空间索引

CREATE SPATIAL INDEX spa_test ON test10(test);

【2】ALTER TABLE tbl_name ADD [UNIQUE | FULLTEXT | SPATIAL] INDEX 索引名称(字段名称[(长度)] [ASC|DESC])
(1)普通索引

ALTER TABLE test4 ADD INDEX in_username(username)

(2)唯一索引

ALTER TABLE test5 ADD UNIQUE INDEX uni_card(card);

(3)全文索引

CREATE FULLTEXT INDEX full_userDesc ON test6(userDesc);

(4)单列索引
(5)多列索引

ALTER TABLE test8 ADD INDEX mul_ti_t2_t3(test1,test2,test3);

(6)空间索引

删除索引

【1】DROP INDEX 索引名称 ON tbl_name

DROP INDEX full_userDesc ON test6;

【2】ALTER tbl_name 表名 DROP INDEX 索引名称

ALTER TABLE test8 DROP INDEX mul_t1_t2_t3;

MySQL图形化管理工具

PHPMyAdmin

PHPMyAdmin是一个用PHP编写的软件工具,可以通过web方式控制和操作MySQL数据库

SQLyog

【1】是业界注明的Webyog公司出品的一款简介高效,功能强大的MySQL数据库管理工具
【2】特点:
(1)基于C++和MySQLQPI编程
(2)方便快捷的数据库同步与数据库结构同步工具
(3)易用的数据库,数据备份与还原功能(4)支持导入与导出XML、HTML、CSV等多种格式的数据
(5)直接运行批量SQL脚本文件,速度极快
(6)新版本更适合增加了强大的数据迁移

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/467831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python list存储方式_python list存储

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台&…

Linux下的gpio,gpiod

GPIO 应该是每个嵌入式设备都避免不了的。最近在做项目的时候&#xff0c;也遇到这方面的问题&#xff0c;所以简单总结一下现在内核里面多了gpiod的来控制gpio口&#xff0c;相对于原来的形式&#xff0c;使用gpiod的好处是我们申请后不进行free也没有什么问题。但是你要是使用…

剖析大神代码,计算整型里面1的个数

昨天的文章&#xff0c;可能很多人看了不知道怎么回事&#xff0c;确实&#xff0c;我也是看了之后一头雾水。先给出个简单的例子#include "stdio.h"int count_bits4(char x) {x (x&0x55) ((x>>1)&0x55);x (x&0x33) ((x>>2)&0x33);x…

android 复制u盘文件到手机本地_如何导出Android中的文件(把Android当做U盘)

方法一&#xff1a;1. 连接USB,插入电脑2.用手在手机上方往下滑动&#xff0c;会出现几个菜单&#xff0c;其中有一个"choose a connection type". 选择 Disk Drive.你看到的也许是&#xff0c;Charge only, 点击切换到Disk Drive.3.这时你的电脑上就会出现USB标志的…

机器学习导论 与数学分析

文章目录机器学习定义说人话例子专家系统 定义好&#xff0c; 应招&#xff0c;速度快机器学习 实验 奖惩 调参对象任务 TASK T一个或多个经验 EXPERIENCE性能PERFORMANCE类比人类学习监督学习半监督学习无监督学习增强学习可解决问题不可解决问题举例f&#xff08;x&#xff0…

聊聊、Highcharts 动态数据

最近项目中需要用到图表&#xff0c;找了几个开源框架&#xff0c;最后选择 Highcharts&#xff0c;原因是 Highcharts 功能强大&#xff0c;稳定&#xff0c;方便&#xff0c;而且开源&#xff0c;社区比较成熟。 首先下载 Highcharts&#xff0c;导入项目。 在 HTML 页面引入…

你知道用git打补丁吗?

#常规操作一个常规的使用git 生成补丁的方式git diff ./ > xxx.patch patch -p1 < xxx.patch但是这样生成的补丁有一个问题&#xff0c;这个是差分形式的diff --git a/kernel-4.4/drivers/input/touchscreen/goodix.c b/kernel-4.4/drivers/input/touchscreen/goodix.c i…

windows 禁用ipv6服务_Win10如何关闭IPV6?Win10禁用IPv6的方法

在Win10系统中默认开启IPV6&#xff0c;不过这个协议暂时我们还用不到。而且开启该协议有时对系统运行有一定的影响&#xff0c;一些网卡还会因为IPv6出现系统未响应&#xff0c;假死等情况&#xff0c;那么Win10系统怎么关闭IPV6&#xff1f;下面小编就给大家带来Win10禁用IPv…

概率论与贝叶斯先验

文章目录概率论与贝叶斯先验概率论基础问题代码图像本福特定律应用&#xff1a;公路堵车模型代码模型初速不同&#xff1a;影响不大减速概率&#xff1a;影响大应用&#xff1a;商品推荐解答概率公式应用样本贝叶斯公式分布两点分布二项分布泊松分布期望和方差表示强度应用均匀…

vue项目导入外部css样式和js文件

转自&#xff1a;http://blog.csdn.net/xiejunna/article/details/54943957 css文件放入static文件夹下。 转载于:https://www.cnblogs.com/ourLifes/p/7444074.html

Linux内核0.12完全注释

推荐一本书 Linux 0.12内核完全注释 先把麻雀解剖了&#xff0c;再去研究老鹰和飞机可能会更好。现在市面的很多书籍都是基于比较新的内核讲解的&#xff0c;2.6的内核或者4.4的内核&#xff0c;因为内核版本越高&#xff0c;里面的东西就越多&#xff0c;想要讲解明白就需要花…

iangularjs 模板,AngularJS模板中的三元运算符

How do you do a ternary with AngularJS (in the templates)?It would be nice to use some in html attributes (classes and style) instead of creating and calling a function of the controller.解决方案Update: Angular 1.1.5 added a ternary operator, so now we ca…

矩阵和线性代数

文章目录矩阵和线性代数矩阵SVD提法举例推导代码分解效果方阵行列式范德蒙行列式作用代数余子式伴随矩阵方阵的逆矩阵乘法模型举例概率转移矩阵平稳分布&#xff1a;向量乘法矩阵的秩秩与方程组的解推论向量组等价系数矩阵对CAB重认识正交阵特征值和特征向量性质不同特征值对应…

对比一段ADC键值读取的代码

最近接触到的一个代码&#xff0c;这个代码看起来很简单&#xff0c;但是却蕴藏了人类的智慧与结晶。正是这些不断产生的智慧与结晶&#xff0c;让我们的电子产品越来越稳定&#xff0c;越来越智能。周五了&#xff0c;评论文章&#xff0c;选两个同学赠送书籍《Linux内核完全剖…

HTML5权威指南 11.通信API

1 <!DOCTYPE html>2 <html>3 4 <head>5 <meta charset"UTF-8">6 <title></title>7 <script type"text/javascript">8 //&#xff08;1&#xff09;监听message事件9 window.addEve…

在线登记系统代码 php_PHP框架实现WebSocket在线聊天通讯系统

ThinkPHP使用Swoole需要安装think-swooleComposer包&#xff0c;前提系统已经安装好了SwoolePECL拓展tp5的项目根目录下执行composer命令安装think-swoole&#xff1a;composerrequiretopthink/think-swoole话不多说&#xff0c;直接上代码&#xff1a;新建WebSocket.php控制器…

Java:抽象类笔记

抽象类&#xff1a;类中没有包含足够的信息来描绘一个具体的对象。 为什么要创建抽象类&#xff1f; 为了更好的继承&#xff0c;以后能更好的扩展&#xff0c;减少类与类之间的耦合。 什么时候需要创建一个抽象类&#xff1f; &#xff08;简单粗暴的理解&#xff09;某个方法…

ios触摸超出_iOS开发笔记之多点触控(一)处理触摸的4个方法

多点触控乃苹果公司带给世界的创新之首&#xff0c;作为移动开发者&#xff0c;熟练掌握多点触控开发技能很有必要。处理触摸的四个方法&#xff1a;-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event //首次在屏幕上检测到触摸时调用{NSLog("touchesBega…

机器学习数据包之numpy

numpy 属性 import numpy as np#矩阵运算arraynp.array([[1,2,3],[2,3,4]])print (array)[[1 2 3][2 3 4]]维度 print(number of dim,array.ndim)number of dim 2形状 print(shape,array.shape)shape (2, 3)大小 print(size,array.size)size 6创建 创建类型 anp.array([…

RK 利用SARADC 来做多个按键

#DTS配置#配置DTS节点#驱动文件中匹配 DTS 节点#驱动说明#获取ADC通道#获取ADC值#计算采集到的电压#接口说明#调试方法#节点ADC值RK3399开发板上的 AD 接口有两种&#xff0c;分别为&#xff1a;温度传感器 (Temperature Sensor)、逐次逼近ADC (Successive Approximation Regis…