一、基础命令
1.1 查看当前用户
> select current_user();

1.2 字符长度

1.3 统计条数

1.4 延时函数

1.5 判断当前面条件为真的情况下,输出第一个值,否则第二个


二、连接数据库的用户名
mysql> select session_user();

三、查看安装路径
mysql> select @@basedir;

四、操作系统版本
mysql> select @@version_compile_os;

五、字符串连接函数
mysql> select concat('~',username) from user;
mysql> select concat('~',username,'~',phone) from user;

mysql> select concat_ws('~',username,'~',password) from user;

mysql> select group_concat('~',username) from user;

六、截取字符
6.1 从user中username第一条数据从第一位开始截取,截取两位数
mysql> select substr((select username from user limit 0,1),1,2);


6.2 借助MID函数获取字符串;Martin中从第二位开始,提取长度为5的字符串
mysql> select mid('martin',2);

6.3 从左数第二位
mysql> select left('martin',2);

6.4 从右数第二位
mysql> select right('martin',2);

6.5 返回字符串security中第一次出现字符串的位置
mysql> select locate('security','123security');


七、字符串截取函数实战
7.1 测试表中字段及数据

7.2 limit 获取条数

7.3 截取字符串《无零》



八、联合查询
8.1 and && 两边都需要满足


8.2 or || 只需要一边成立即可

九、union联合查询,有两条查询语句
9.1 ## 子查询语句的字段需要和主查询语句的字段一致,否则报错:

正确的做法:

9.2 子查询表的字段列数需要与主的查询字段列数一致,否则报错

正确;

9.3 子查询返回数据超过主查询数据的行数《limit》

正确;

9.4 select 后面跟的是字段



十、返回字符的ascii值函数
10.1 select 返回a的ascii值:只识别第一个
> select ascii('a');
> select ord('a');

10.2 比较

十一、mysql的information_schema数据库的运用
11.1 简介
在mysql中,把information_schema看做是一个数据库,确切说是信息数据库。其中保存着关于mysql服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。在information_schema中,有个只读表。它们实际上是视图,而不是基本表。因此,你将无法看到与之相关的任何文件。
11.2 表简介
**SCHEMATA表:**提供了当前mysql实例中所有数据库的信息。是showdatabass的结果取之此表。
**TABLES表:**提供了关于数据库中的表信息,包括视图。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。是show tables form schemanme的结果取之此表。
**columns表:**提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息。是show columns fom schemaname.tablename的结果取之此表。
STATISTICS表:提供了关于表索引的信息。是show index from schemaname.tablename的结果取之此表。
USER_PRIVILEGES(用户权限)表:给出了关于全程权限的信息。该信息源自mysql.user授权表。是非标准表。
TABLE_PRIVILEGES(表权限)表:给出了关于表权限的信息。该信息源自mysql.tables_priv授权表。是非标准表。
order by or group by:判断列的数量:
select * from user where id = 3 order by 3;
select * from user where id =3 group by 4;


查看user表中的字段:

11.3 示例
