MySQL查漏补缺——一些没有注意的基础操作

1.创建数据库

create database 数据库名 charset=utf8;

2.创建自增主键

create table classes(
id int unsigned auto_increment primary key not null,
name varchar(10));

unsigned:整型的每一种都分有无符号(unsigned)和有符号(signed)两种类型(float和double总是带符号的),在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。

3.二分类型数据类型

gender bit default 1,

bit:它的值是一个二进制位,不是0就是1,类似Boolean类型中的True和False。

4.没有的内容显示‘无’

select name,ifnull(birthday,'无') from students;

5.group by + group_concat()

group_concat(字段名)可以作为一个输出字段来使用,表示分组之后,根据分组结果,使用group_concat()来放置每一组的某字段的值的集合。

select gender,group_concat(name) from students group by gender;

6.group by + with rollup

with rollup的作用是:在最后新增一行,来记录当前列里所有记录的总和

select gender,count(*) from students group by gender with rollup;

![图片描述]

7.视图

通俗的讲,视图就是一条SELECT语句执行后返回的结果集。基本表数据发生了改变,视图也会跟着改变。

create view 视图名称 as select语句;

视图的用途就是查询

select * from 视图名称;

删除视图

drop view 视图名称;

8.获取当前时间

年月日时分秒

now()                2020-05-23 16:58:13            在执行开始时值就得到了
sysdate()          2020-05-23 16:58:13            在函数执行时动态得到值

年月日

current_date()    2020-05-23
curdate()            2020-05-23

时分秒

current_time()    16:58:13
curtime()            16:58:13
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。