文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

mysql基础知识有哪些

2024-04-02 19:55

关注

本篇内容介绍了“mysql基础知识有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

第一章 mysql的安装和配置
1 mysql数据库版本:社区版、企业版
2 mysql数据库类型:standard、max、debug
3 windows下安装mysql:noinstall、图形化方式安装
4 linux下安装mysql:rpm包、二进制包、源码包
5 mysql服务和mysql数据不同,mysql服务是一系列后台进程,而mysql数据库则是一系列的数据目录和文件;mysql数据库必须在mysql服务启动之后才可以进行访问。这点和oracle类似。
6 linux平台下启停mysql服务:
    命令行:
        启动:# cd /usr/bin
                 # ./mysqld_safe &
        关闭:# mysqladmin -uroot shutdowm
    服务的方式:
        启动:# service mysql start
        关闭:# service mysql stop
第二章 sql基础
1 SQL :structure query language
2 sql分类:DDL、DML、DCL
3 连接mysql:$ mysql -uroot -p**** -hlocalhost -P3306
4 your mysql connection id is 7344941:这个数字记录了mysql服务到目前为止的连接次数,每个新连接都会自动加1
5 创建数据库:mysql> create database test1;
6 查看当前有多少数据库: mysql> show databases;
7 默认数据库的功能:
    information_schema:主要存储了系统中的一些数据库对象信息,比如用户表信息、列信息、权限信息、字符集信息、分区信息等。
    cluster:存储了系统的集群信息
    mysql:存储了系统的用户权限信息
    test:系统自动创建的测试数据库,任何用户都可以使用。
8 选择数据库并查看该库中的表:
    mysql> use test1
    mysql> show tables;
9 查看当前的数据库信息以及用户信息:mysql> status
10 删除数据库:mysql> drop database test1;
11 创建表:
    mysql> create table emp(ename varchar(10),hiredata date,sal decimal(10,2),deptno int(2));
    mysql> desc emp;
    mysql> show create table emp \g;
    PS:\g含义是使得记录能够按照字段竖向排列,以便更好地显示内容较长的记录。
12 删除表:mysql> drop table emp;
13 修改表:
    修改表字段属性:alter table emp modify ename varchar(20);
    增加表字段:alter table emp add column age int(3);
    删除表字段:alter table emp drop column age;
    表字段改名:alter table emp change age age1 int(4);
    修改表字段排列顺序:alter table emp add birth data after ename;alter table emp modify age int(3) first;
    更改表明:alter table emp rename emp1;
14 插入记录:
    insert into emp(ename,hiredata,sal,deptno) values('zzx1','2000-01-01','2000',1);
    insert into emp values('lisa','2003-02-01','3000',2);
    insert into dept values(5,'dept5'),(6,'dept6');
15 更新记录:
    update emp set sal=4000 where ename='lisa';
    PS:注意要带where子句,不然会把表中所有行该字段都更新为lisa,很多人不小心都会犯这个错误。
16 删除记录:
    delete from emp where ename='dony';
    delete a,b from emp a,dept b where a.deptno=b.deptno and a.deptno=3;
17 查询记录:
    select * from emp;
    slelect ename,hiredate,sal,deptno from emp;
    select distinct deptno from emp;
    select * from emp where deptno=1 and sal<3000;
    select * from emp order by sal;  desc表示按照字段进行降序排列,asc表示升序排列。默认是按照升序排列。
    select * from emp order by deptno,sal desc;
    select * from emp order by sal limit 3;
    select * from emp order by sal limit 1,3;
    sum(求和),count(记录数),max(最大值),min(最小值)
    with rollup 是可选语法,表明是否对分类聚合后的结果进行再汇总。
    having和where的区别在于,having是对聚合后的结果进行条件过滤,而where是在聚合前就对记录进行过滤,如果逻辑允许,我们尽可能用where先过滤记录,这样因为结果集减小,将对聚合的效率大大提高,最后再根据逻辑看是否用having进行再过滤。
    mysql> select id,count(*) from t group by id;
+------+----------+
| id   | count(*) |
+------+----------+
|    1 |        1 |
|    2 |        2 |
|    3 |        3 |
|    4 |        4 |
+------+----------+
4 rows in set (0.00 sec)

mysql> select id,count(*) from t group by id with rollup;
+------+----------+
| id   | count(*) |
+------+----------+
|    1 |        1 |
|    2 |        2 |
|    3 |        3 |
|    4 |        4 |
| NULL |       10 |
+------+----------+
5 rows in set (0.00 sec)

mysql> select id,count(*) from t group by id having count(1)>2;
+------+----------+
| id   | count(*) |
+------+----------+
|    3 |        3 |
|    4 |        4 |
+------+----------+
2 rows in set (0.08 sec)
    select ename,deptname from emp,dept where emp.deptno=dept.deptno;
    select ename,deptname from emp left join dept on emp.deptno=dept.deptno;
    select ename,deptname from dept right join emp on dept.deptno=emp.deptno;
    select * from emp where deptno in (select deptno from dept);
    select * from emp where deptno = (select deptno from dept limit 1);
    union 和union all的主要区别是union all是把结果集直接合并在一起,而union是将union all后的结果进行一次distinct,去除重复记录后的结果。
    表连接在很多情况下用于优化子查询。    

“mysql基础知识有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯