黑马程序员技术交流社区

标题: 『黑马程序员合肥』JavaEE就业笔记单表操作sql语句 [打印本页]

作者: 太阿    时间: 2018-5-8 19:59
标题: 『黑马程序员合肥』JavaEE就业笔记单表操作sql语句
本帖最后由 太阿 于 2018-5-22 18:43 编辑

SQL的概述
sql概述:结构化查询语言.
什么是mySQL:关系型数据库管理系统(保存的就是实体之间的关系).
什么是RDBMS:RDBMS,翻译relational database mangement system,其实就是管理RDBM(关系型数据库,通过sql语句管理的),描述的是实体与实体之间的关系(通过数据表).


【数据库的概念】

什么是数据库:翻译就是relational database mangement system,其实就是管理RDBM(关系型数据库,通过sql语句管理的),描述的是实体与实体之间的关系(通过数据表).
什么是非关系型数据库:关系型数据库的阉割版,少了很多功能 ,但是访问速率快.
补充:
常见的非关系数据库:Nosql,MngDB,Redis
关系型:Mysql(中小型),Oracle(大型),DB2(大型数据库),SqlServer(大型).


服务器概念

服务器要从硬件和软件两方面来说:
1.硬件:指的就是一台计算机
2:软件:需要在电脑上安装数据库服务器

MySQL数据库储存方式
        一台数据库服务器会创建多个数据库(一个项目,创建一个数据库),数据库中有很多表(一个实体创建一个表),一个表有很多记录(一个实例创建一个记录).(二维表格:行描述具体数据,列描述具体属性)


sql语句的概述

     sql语句是:结构化查询语言,作用就是操作数据库和数据表
*sql语句分类:
     1.DDL:数据定义语言:Create,Drop,truncate,alter 创建数据库和数据表,修改表结构
     2.DCL:数据控制语言:Grant,if  给数据库授权,给数据库创建用户(数据库工程师做的)
     3.DML:数据操作语言:insert into.update ,delete更新数据的,增删改
     4.DQL:数据查询语言:select 查询数据库



sql语句的CRUD


(补充)sql语法:sql语句不区分大小写,一条sql语句用 ; 结束

*操作数据库的CRUD:
     C:create database 数据库名称 [character set 字符集 collate 字符集校对规则]
     R:show databases ;查看所有数据库名称  
        show create database 数据库名称   查看数据库信息
     U:alter database 数据库名称 character set 字符集 collate 校对规则
     D:dorp database 数据库名称
    其他数据库操作:
        切换数据库:use 数据库名称
        查询当前数据库:select database()

*操作数据库表的CRUD:


     C:create table 表名称(字段名称 字段类型(长度) 约束,字段名称 字段类型(长度) 约束...);(一个实体对应一个表,一个实体属性对应表的一个字段)

     R:show tables;查看所有表
        desc 表名;查看表结构

     U:添加列: alter table 表名 add 列名 类型(长度) 约束;
        修改表类型: alter table 表名 modify 列名 类型(长度) 约束;
        删除列 :alter table 表名 drop 列名;
        修改列名: alter table 表名 change 旧列名 新列名 类型(长度) 约束;
        修改表字符集: alter table 表名 charset set 字符集;
        修改表名: alter table 表名 rename to 新的表名;
      D:drop table 表名


*操作数据的CRUD:


     C:insert into

         insert into 表名(列1,列2,列3...)values(值1,值2,值3...)
         insert into 表名 values(值1,值2,值3...)

     R:select
        distinct 去重 as取别名(可以省略)
        基本查询:select * from 表名
                      select 列名1,列名2,...from 表名
                      select distinct 列名 from 表名
                      select 列名1+列名2... from 表名
                      select 列名1 +列名2 as 别名 from 表名

        条件查询:关键字是where (>,<,>=,<>,=)

        模糊查询:like

        范围查询:between and  ,in();

        条件关联查询:and,not,or
                            (查询null:列名 is null,列名 not is null(不能写=))

        排序查询:order by 字段名 asc(升序,默认不写)
                      order by 字段名 dexc(降序)

        聚合函数:sum()求和,avg()平均值,max(),min(),count()统计表中记录数

分组查询:group by


【总结】:
              分组查询时候根据数据共性特点分组才有意义,分组后进行条件判断只能使用having 聚合函数条件.
              关键词使用先后顺序: select+字段名称/聚合函数 +from +表名+ where+ 条件(分组前判断)  +group by(按共性分组)+having+order by +desc/asc
              
(要啥图啊...要啥图...)
                                                                              外甥女可爱萌照镇贴



作者: Yin灬Yan    时间: 2018-5-9 14:34
我来占层楼啊   
作者: 美美就是美    时间: 2018-5-11 17:25
只想知道照片是谁
作者: 太阿    时间: 2018-5-11 22:58
美美就是美 发表于 2018-5-11 17:25
只想知道照片是谁

我外甥女呀





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2