MySQL基础知识总结二

1.distinct去重

select distinct 字段1,字段2...from 表名;

注意:distinct只能出现在所以字段的最前面。

2.连接查询

根据表的连接方式来划分:

内连接:等值连接、非等值连接、自连接。

select  ... from ... join...on...

外连接:左连接、右连接。

select  ... from ... left join...on...(往哪边,哪边就是主表)

全连接(少用忽略!!!)

思考:内连接和外连接有什么区别?

          如果有A、B两张表进行内连接,就没有主副表之分,两张表是平等的。

          如果有A、B两张表进行外连接,则有一张表是主表,有一张表是附表,

          如果副表中的数据没有与主表中的数据匹配上,则自动拟出NULL与之匹配。

3.子查询

select语句当中嵌套select语句,被嵌套的select语句是子查询。

子查询可以出现在哪里?
        select
            ..(select).
        from
            ..(select).
        where
            ..(select).

4.union查询结果集相加

可以将两张想干或不相干的表中数据拼接在一起显示。

5.limit

limit startIndex, length

作用:limit取结果集中的部分数据。

每页显示pageSize条记录:
第pageNo页:(pageNo - 1) * pageSize, pageSize

注意:limit是MySQL特有的,与其他数据库不通用。

           limit是SQL语句最后执行的一个环节。

6.创建表

create table 表名(

            字段名1 数据类型,
            字段名2 数据类型,
            字段名3 数据类型,
            ....
        );

关于MySQL当中字段的数据类型?以下只说常见的
        int        整数型(java中的int)
        bigint    长整型(java中的long)
        float        浮点型(java中的float double)
        char        定长字符串(String)
        varchar    可变长字符串(StringBuffer/StringBuilder)
        date        日期类型 (对应Java中的java.sql.Date类型)
        BLOB        二进制大对象(存储图片、视频等流媒体信息) Binary Large OBject (对应java中的Object)
        CLOB        字符大对象(存储较大文本,比如,可以存储4G的字符串。) Character Large OBject(对应java中的Object)
        ......

7.insert语句插入数据

insert into 表名(字段名1,字段名2,字段名3,....) values(值1,值2,值3,....)
要求:字段的数量和值的数量相同,并且数据类型要对应相同。

8.表的复制

create table 表名 as select语句;
将查询结果当做表创建出来。

insert into 表名1 select * from 表名2;
将查询结果插入到一张表中。

9.update修改数据

update 表名 set 字段名1=值1,字段名2=值2... where 条件;

注意:没有条件整张表数据全部更新。

10.delete删除数据

delete from 表名 where 条件;

注意:没有条件全部删除。

增删改查有一个术语:CRUD操作
Create(增) Retrieve(检索) Update(修改) Delete(删除)

11.约束(Constraint)

在创建表的时候,可以给表的字段添加相应的约束,添加约束的目的是为了保证表中数据的
合法性、有效性、完整性。

常见的约束:
        非空约束(not null):约束的字段不能为NULL
        唯一约束(unique):约束的字段不能重复
        主键约束(primary key):约束的字段既不能为NULL,也不能重复(简称PK)
        外键约束(foreign key):...(简称FK)
        检查约束(check):注意Oracle数据库有check约束,但是mysql没有,目前mysql不支持该约束。

11.1非空约束

create table 表名(

            字段名1 数据类型 not null,
            字段名2 数据类型,
            字段名3 数据类型,
            ....
        );

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值