MySQL数据库查、改、增、删知识点
常见数据库:MySQL、Oracle、Sqlserver、DB2
MySQL是一个关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。由瑞典MySQLAB公司开发,目前属于Oracle旗下产品。最流行的关系型数据库管理系统之一
关系数据库优点:
- 数据间的耦合性低
- 冗余数据减少
- 关联数据完整
1. 数据查询
1.1 基本查询:
查询格式 : select 字段1,字段2 from 表名 注:可以使用 * 来代替表中的所有字段
案例1 查询 cate 表中所有栏目的id和了栏目名称信息: select cate_id,cate_name from cate
案例2 查询 admin 表中的所有信息 :select * from admin
1.2 where查询:

1.2.1使用比较查询:
案例3 查询id值大于等于2的栏目的所有信息: select * from cate where cate_id>='2'
1.2.2使用范围查询:
between…and… 表示包含边界值
not between…and… 表示不包含边界值
in(数据1,数据2,…)表示筛选符合数据条件的信息
not in(子查询)表示筛选不符合子查询结果的信息
案例4 查询年龄在20-30之间的管理员信息: select * from admin where admin_age between 20 and 30
案例5 查询id值大于3并且小于6的管理员信息: select * from admin where admin_id not between 3 and 6
案例6 查询年龄为18、25的管理员信息: select * from ali_admin where admin_age in (18,25)
案例7 查询年龄不为18、25的管理员信息: select * from ali_admin where admin_age not in (select * from ali_admin where admin_age in (18,25))
1.2.3使用 like + 通配符 模糊查询:
%:表示任意长度(包括0)的任意字符
_ :表示1位长度的任意字符
like:表示匹配
not like:表示不匹配
案例8 查询包含“科技”关键词的文章信息: select * from article where article_content like '%科技%'
1.2.4使用多重条件查询:
and:表示 并
or:表示 或
案例9 查询年龄大于25的男性管理员信息:select * from admin where admin_age > 25 and admin_gender='男
1.3 order by 排序查询:
对查询结果按某个字段的升降序进行排序 升序(默认值):asc 降序 :desc
案例10 查询 cate 表所有的栏目信息,并按别名的降序排列: select * from cate order by cate_slug desc
1.4 limit 限制查询:
限制查询结果的起始点与结果长度
格式:limit 参数1(起始点,值从0开始),参数2(查询结果的长度) 注:一般与排列查询配合使用
案例11 查询 cate 表所有的栏目信息,并取发布时间最新的前五条信息: select * from cate order by cate_addtime desc limit 0,5
1.5 group by 分组查询:
案例12 查询统计男女管理员的数量: select admin_gender,count(*) num from admin group by admin_gender
注意:代码中多添加了一个 count(*)num 参数,是为了统计数据而建立的字段
1.6 join…on…多表查询:
使用 join…on… 将两表连接之后进行其他操作
案例13 查询统计每个管理员发布的文章数量,显示作者名:
//查询作者名
select admin_nickname,count(*) from ali_article art(给 ali_article 表起一个代号为 art)
join ali_admin adm(给 ali_admin 表起代号为 adm) on
art.article_adminid=adm.admin_id(给 art与adm 两个表建立联系)
group by admin_nickname(分组统计作者名)
案例14 查询所有文章信息,显示作者使用昵称,显示栏目使用栏目名:
//查询了所有的文章信息还有作者的昵称以及栏目名
select select article_title,article_desc,article_content,admin_nickname,cate_name from ali_article art
join ali_cate cat on
art.article_cateid=cat.cate_id
join ali_admin adm on
art.article_adminid=adm.admin_id
2. 添加数据
核心代码:insert into 表名(字段1,字段2,字段3,…) values(值1,值2,值3,…)
注:字段的顺序与值的顺序是完全匹配
3. 修改数据
核心代码:update 表名 set 字段1=值1,字段2=值2,… where 修改数据位置标志

4. 删除数据
核心代码: delete from 表名 where 删除位置标志


浙公网安备 33010602011771号