@[toc]目录
#1 , 创建表 : create table 表名(字段名 字段类型(字段长度),字段2,字段3)
#1,新增: insert into 表名 values ("字段1的值","字段2的值",...)
#2,删除数据: delete from 表名 (可加限定条件where)
#3,修改: update 表名 set 字段名=字段的新值
#1.自增(increment)、非空(not null)、唯一(unique)
distinct where like null between...and limit order by
#2.5 between and / limit / order by
#一、数据库的常见操作
#1,查询 : show databases
#2,新增 : create database 库名
#3,删除 : drop database 库名
#二、表的常见操作
#1 , 创建表 : create table 表名(字段名 字段类型(字段长度),字段2,字段3)
create table abc(id int(3),
name varchar(10),
age int(3)
);
show tables;
#2,删除表 : drop table 表名
#3,修改表 :alter
alter table tb_door add colum addr varchar(100);
#4,查看表 : show tables;
#5,描述表 : desc tb_door;
#三、表记录的常见操作
#1,新增: insert into 表名 values ("字段1的值","字段2的值",...)
#2,删除数据: delete from 表名 (可加限定条件where)
#3,修改: update 表名 set 字段名=字段的新值
update tb_door set addr = "shanghai";
#4,查询: select 字段名 from 表名
select id,name from tb_door ;
#四、字段约束
#1.自增(increment)、非空(not null)、唯一(unique)
#1,没有约束,id可重复,可以是null
create table a (id int);
#2,主键约束,id的值不能重复,不能是null
create table b (id int primary key);
#3,主键约束自增,id不能重复,不null,且自增
create table c (id int primary key auto_increment);
#4,没有非空约束 ,字段的值可以为空
create table d (name varchar(10));
#5,有非空约束 , 字段值不能为空
create table e (name varchar(10) not null);
#6,不用唯一约束 ,字段值可重复
create table f (name varchar(10));
#7,有唯一约束 ,字段的值不能重复
create table g (name varchar(10) unique);
#五、Mysql的基础函数
#1,常见函数
lower–全转小写
upper–全转大写
length–求长度
concat–拼接串
substr–截取字符串
replace–替换字符串
ifnull–对null元素的替换
round–对小数四舍五入
ceil–对小数向上取整
floor–对小数向下取整
now–获取当前的年月日时分秒
year–获取日期里的年
month–获取日期里的月
day–获取日期里的日
hour–获取日期里的时
minute–获取日期里的分
second–获取日期里的秒
转义字符 ’
#2,测试:
#1,全转大写,小写
select dname ,lower(dname),upper(dname) from dept
#2,求长度,字母数字一字节,汉字三字节
select dname ,length(dname),loc ,length(loc) from dept
#3,截取字符串
select dname ,substr(dname,2,5) from dept #从第二个字符开始,截取出5个
#4,拼接字符串
select dname ,concat(dame,'hello') from dept #在原来的值后面拼接hello
#5,替换字符串
select dname ,repalce(dname,'a','666') from dept #把a都换成666
#6,ifnull 如果是null就替换
select comm,ifnull (comm,0) from emp
#7,round 四舍五入 & ceil向上取整 & floor向下取整
select comm, round(comm),ceil(comm),floor(comm) from emp
#8,now & year年 & month月 & day日 & hour时 & minute分 & second秒
select now() #2021-06-29 11:18:21
select now(),hour(now()),minute(now()),second(now())
#9,转义字符,SQL中包含着一些特殊字符.需要转义 \
select 'xi\'an' == select "xi'an"
#六、条件查询
#1、概述
distinct where like null between...and limit order by
#2、distinct where
#2.1 查询部门地址: (去掉重复结果)
<