驰网飞飞 发表于 2024-2-19 17:59:57

MySQL数据库怎么创建表?MySQL数据库基础知识

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。

MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。 由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。

无论是游戏开发、软件开发还是网站建设,对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_nameMODIFY 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
  
  UNION
  SELECT column1,column2, column3...columnN FROM table_b
  
UNION的作用的连接两个查询结果集
DISTINCT的作用是对两个结果集进行去重处理,默认情况下已经是DISTINCT的结果了
ALL的作用的不对两个结果集进行去重处理

14、ORDER BY
  SELECT * FROM table_name
  ORDER BY column1
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

以上就是关于MySQL数据库的分享

感谢您的阅读,服务器大本营助您成为更专业的服务器管理员!
页: [1]
查看完整版本: MySQL数据库怎么创建表?MySQL数据库基础知识

点击直接加入[服务器大本营QQ频道]