热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql基础知识有哪些

本篇内容介绍了“mysql基础知识有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何

本篇内容介绍了“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基础知识有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程笔记网站,小编将为大家输出更多高质量的实用文章!


推荐阅读
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文讨论了Kotlin中扩展函数的一些惯用用法以及其合理性。作者认为在某些情况下,定义扩展函数没有意义,但官方的编码约定支持这种方式。文章还介绍了在类之外定义扩展函数的具体用法,并讨论了避免使用扩展函数的边缘情况。作者提出了对于扩展函数的合理性的质疑,并给出了自己的反驳。最后,文章强调了在编写Kotlin代码时可以自由地使用扩展函数的重要性。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 本文介绍了OpenStack的逻辑概念以及其构成简介,包括了软件开源项目、基础设施资源管理平台、三大核心组件等内容。同时还介绍了Horizon(UI模块)等相关信息。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • Postgresql备份和恢复的方法及命令行操作步骤
    本文介绍了使用Postgresql进行备份和恢复的方法及命令行操作步骤。通过使用pg_dump命令进行备份,pg_restore命令进行恢复,并设置-h localhost选项,可以完成数据的备份和恢复操作。此外,本文还提供了参考链接以获取更多详细信息。 ... [详细]
  • Android自定义控件绘图篇之Paint函数大汇总
    本文介绍了Android自定义控件绘图篇中的Paint函数大汇总,包括重置画笔、设置颜色、设置透明度、设置样式、设置宽度、设置抗锯齿等功能。通过学习这些函数,可以更好地掌握Paint的用法。 ... [详细]
  • java drools5_Java Drools5.1 规则流基础【示例】(中)
    五、规则文件及规则流EduInfoRule.drl:packagemyrules;importsample.Employ;ruleBachelorruleflow-group ... [详细]
  • 本文介绍了如何将CIM_DateTime解析为.Net DateTime,并分享了解析过程中可能遇到的问题和解决方法。通过使用DateTime.ParseExact方法和适当的格式字符串,可以成功解析CIM_DateTime字符串。同时还提供了关于WMI和字符串格式的相关信息。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文介绍了如何使用PHP代码将表格导出为UTF8格式的Excel文件。首先,需要连接到数据库并获取表格的列名。然后,设置文件名和文件指针,并将内容写入文件。最后,设置响应头部,将文件作为附件下载。 ... [详细]
  • 文件路径的生成及其在文件操作中的应用
    本文介绍了文件路径的生成方法及其在文件操作中的应用。在进行文件操作时,需要知道文件的具体位置才能打开文件。文件的位置有绝对路径和相对路径之分。绝对路径通常只在特定电脑上有效,不同电脑上的文件存放路径可能不同,导致程序报错。相对路径是解决这个问题的最好方式,它不依赖于文件的具体存放位置,只需要按照统一的规范进行文件存放即可。使用相对路径可以避免冗余和麻烦,特别适用于大项目和团队维护代码的情况。 ... [详细]
author-avatar
blovejin
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有