MySQL数据库基本知识

MySQL数据库基本知识

1.创建数据库

  CREATE DATABASE database_name

2.删除数据库

  DROP DATABASE database_name

3.选择数据库

  USE database_name

4.数据类型

(1)数值类型

 (2)日期和时间类型

 (3)字符串类型

5.创建数据表

  CREATE TABLE table_name (column_name column_type)

6.删除数据表

  DROP TABLE table_name

7.更新数据表信息

  (1)添加表字段

    ALTER TABLE table_name ADD new_column DATATYPE

    使用FIRST关键字可以将新增列的顺序调整至数据表的第一列

    ALTER TABLE table_name ADD new_column DATATYPE FIRST

    使用AFTER关键字可以将新增列调整至数据表的指定列之后

    ALTER TABLE table_name ADD new_column DATATYPE AFTER old_column

  (2)删除表字段

    ALTER TABLE table_name DROP old_column

  (3)修改表字段类型

    ALTER TABLE table_name  MODIFY column_name NEW_DATATYPE

  (4)修改字段名称

    ALTER TABLE table_name CHANGE old_column_name new_column_name DATATYPE

8.插入数据

  INSERT INTO table_name  (column1, column2,column3...columnN)

          VALUES

               (value1, value2, value3...valueN);

9.查询数据

  SELECT column1, column2, column3...columnN FROM table_name

  (1)使用*可以替代字段名,SELECT语句会返回表的所有字段

    例:SELECT * FROM table_name

  (2)可以使用WHERE语句来包含任何条件

    例:SELECT * FROM table_name WHERE column=1

  (3)可以使用LIMIT属性设定返回的记录数

    例:返回查询结果的前三条记录

    SELECT * FROM table_name LIMIT 3

    例:返回查询结果的第三条记录

    SELECT * FROM table_name LIMIT 2,1      (2指的是第几条数据(从0开始计数),1指的是从2开始返回几条数据)

  (4)可以使用OFFSET指定开始查询的偏移量,默认情况下偏移量为0

    例:SELECT * FROM table_name LIMIT 2 OFFSET 3 等于 SELECT * FROM table_name LIMIT 2,3

10.更新数据

  UPDATE table_name SET column1=value1, column2=value2

  WHERE condition

11.删除数据

  DELECE FROM table_name

  WHERE condition

12.LIKE子句

  LIKE子句中使用%号来表示任意字符,其的效果类似正则表达式中的*,如果没有使用%,那么LIKE的效果等价于=

  SELECT * FROM table_name

  WHERE column1 LIKE %condtion%

 13.UNION

  SELECT column1,  column2, column3...columnN FROM table_a

  [WHERE condition]

  UNION [ALL | DISTINCT]

  SELECT column1,  column2, column3...columnN FROM table_b

  [WHERE condition]

  UNION的作用的连接两个查询结果集

  DISTINCT的作用是对两个结果集进行去重处理,默认情况下已经是DISTINCT的结果了

  ALL的作用的不对两个结果集进行去重处理

14.ORDER BY

  SELECT * FROM table_name

  ORDER BY column1 [ASC | DESC]

  ASC:将结果集按column1升序排列,默认情况下使用升序排序

  DESC:将结果集按column1降序排列

15.GROUP BY

  把数据按照指定列(可以是一列或者多列)进行分组,通常和计算函数COUNT()还有SUM(),AVG()等求值函数一起使用

  例:根据column1将数据进行分组,并且统计每种数据的记录数

    SELECT column1, COUNT(*) FROM table_name

    GROUP BY column1

  WITH ROLLUP可以将GROUP BY的统计结果集基础上再做相同的统计(SUM,AVG....)

  例:假设有下面这样一张表 name=姓名,website=网站,access_count=访问记录

namewebsiteaccess_count
张三百度3
李四新浪5
王五淘宝4
张三新浪2
李四百度1
王五搜狐4
赵六搜狐5

  执行如下代码:

    SELECT name, SUM(access_count) FROM table_name

    GROUP BY name WITH ROLLUP

  得到:

nameSUM(access_count)
张三5
李四6
王五8
赵六5
NULL24

16.INNER JOIN

  INNER JOIN被称为内连接或者等值连接,获取两个表中字段匹配关系的记录

  

 

   例:SELECT table1.column1, table1.column1, table2.column3 FROM table1

     INNER JOIN table2

     ON condition

17.LEFT JOIN

  LEFT JOIN被称为左连接,获取左边所有记录,右表没有的记录补为NULL

  

 

   例:SELECT table1.column1, table1.column2, table2.column3 FROM table1

     LEFT JOIN table2

     ON condition

18.RIGHT JOIN

  RIGHT JOIN被称为右连接,获取右边所有数据,左表没有的记录补为NULL

  

 

   例:SELECT table1.column1, table2.column2, table2.column3 FROM table1

     RIGHT JOIN table2

     ON condition

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

火兰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值