day01 MYSQL基础

目录

数据库

MySQL

MySQL语言分类

数据类型​编辑​编辑​编辑

创建和删除数据库

创建表

插入数据

主键

删除表

修改表

查询

修改

删除

where条件子句

as子句

Distinct去重

逻辑操作符和比较操作符​编辑​编辑

Q&A


数据库

概念:

  • 长期存放在计算机内,有组织、可共享的大量数据的集合,是一个数据“仓库”

作用:

  • 保存、管理数据

MySQL

概念:

  • 是现流行的开源、免费的关系型数据库

特点:

  • 免费、开源数据库

  • 小巧、功能齐全

  • 使用便捷

  • 可运行于Windows或Linux操作系统

  • 可适用于中小型甚至大型网站应用

MySQL语言分类
  • DDL(data defination language)数据库定义语言,主要是建表、删除表、修改表字段等操作

  • DML(data manipulation language)数据操作语言,主要是数据库增删改三种操作

  • DQL(data query language)数据查询语言 select操作

  • DCL(data control language)数据库控制语言,如commit,revoke之类的,在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL

数据类型
创建和删除数据库
create DATABASE root;#创建数据库
drop database root;  #删除数据库
show databases;      #查看数据库
创建表
create table  表名(
字段名 类型名,
  ...    ...
)
插入数据
-- 格式:insert into 表名(filed1,filed2,filed3) values(v1,v2,v3);#指定插入值
-- 注意:表名()中的列数要和values列数对应
-- 格式:insert into 表名(filed1,filed2,filed3) values(v1,v2,v3);#指定插入值
-- 注意:表名()中的列数要和values列数对应
主键

主键(Primary Key):唯一标识,表示一条记录,不能有重复,不允许为空。

create table user(
userId int primary key auto_increment,-- 指定当前字段为主键,并且设置为自动增加(插入的时候不需要插入该字段)
username varchar(20) not null, -- 用户名 表插入的时候,not null修饰的字段值不能为空
password varchar(100) not null,-- 密码
email varchar(30) default "123456@qq.com", -- 邮箱
loginTime datetime,-- 最后登录时间(可以直接用符合格式的字符串)
phone varchar(20) -- 手机号码
)
删除表
detele from 表名 #只删除表中所有数据,表还在
drop table 表名  #删除整个表结构,表不在了
修改表
-- 1.修改表名
alter table student3 rename as  student;
​
-- 2.添加字段(列)
alter table student add email varchar(20);-- 给student表新增email字段
​
-- 3.修改字段
-- 3.1 修改字段的类型
-- 前提:1.所有的列没有值 2.当前的列值和修改后类型相匹配
alter table student modify email int;
​
-- 3.2修改字段名称
alter table student change email address varchar(50);
​
​
-- 3.3 删除某个字段
alter table student drop address2;
查询
-- 查询数据
-- select 字段名1,字段名2,...,字段名n  from 表名
select userId,username,password,email from user;
-- * 通配符,表示所有字段
select * from user;
修改
-- 修改数据
-- update 表名 set filed1=v1 [,filed2=v2… ] [where子句 ]
update user set phone="123456" where userId=1;-- 只修改userId值为1的列
删除
-- 删除操作
delete from user where userId=10002;
​
TRUNCATE table user ;-- 不可以和where字句搭配使用,只能删除所有数据,会重置主键的值从头开始
where条件子句
-- where条件子句:有条件筛选符合要求的数据 一般配合select update delete使用 
select * from user where userId=2;-- 等于
select * from user where username<>"tom";-- 不等于 !=
select * from user where userId BETWEEN 2 AND 3; -- -- 常用  等价于>=&&<=
select * from user where userId>=2&&userId<=3;
select * from user where userId>=4 and userId<=3;-- 常用
​
select * from user where userId>4 or userId<=3;-- 常用
select * from user where userId>4 || userId<=3;
as子句
-- 1.给字段起别名
select userId as 用户编号,username as 用户名 ,password as 密码,email as 邮箱 from user;
-- 2.给表名起别名:方便获取不同表中的字段
select u1.userId,u1.username,u2.password from user u1,user2 u2;
Distinct去重
select DISTINCT username,password from user;-- username和password至少有两条字段一样的才能去重
select DISTINCT username from user;-- 只去重username相同
逻辑操作符和比较操作符

Q&A

题1 MySql有哪些语言分类

DDL(数据库定义语言)、DML(数据库操作语言)、DQL(数据库查询语言)、DCL(数据库控制语言)

题2 mysql创建表语句格式

create table  表名(
字段名 类型名,
  ...    ...
)

题3 如何给字段设置主键及自增

create table user(
userId int primary key auto_increment,-- 指定当前字段为主键,并且设置为自动增加(插入的时候不需要插入该字段)
)

题4 删除和修改表的语句格式

删除表
detele from 表名 #只删除表中所有数据,表还在
drop table 表名  #删除整个表结构,表不在了
修改表
-- 1.修改表名
alter table student3 rename as  student;
-- 2.添加字段(列)
alter table student add email varchar(20);-- 给student表新增email字段
-- 3.修改字段
-- 3.1 修改字段的类型
-- 前提:1.所有的列没有值 2.当前的列值和修改后类型相匹配
alter table student modify email int;
-- 3.2修改字段名称
alter table student change email address varchar(50);
-- 3.3 删除某个字段
alter table student drop address2;

题5 distinct去重如何使用

select DISTINCT username,password from user;-- username和password至少有两条字段一样的才能去重
select DISTINCT username from user;-- 只去重username相同

题6 常见的比较操作符及含义

操作符描述
IS NULL若操作符为NULL,则结果为真
IS NOT NULL若操作符不为NULL,则结果为真
BETWEEN若a范围在b与c之间则结果为真
LIKESQL模式匹配,若a匹配b,则结果为真
IN若a等于a1,a2.中的某一个,则结果为真
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值