数据库基础-----第三天

本文详细介绍了MySQL数据库的基础操作,包括启动、停止、连接、服务管理,以及创建、删除数据库,表的创建、修改、查询和数据操作,还涵盖了JOIN连接和UNION操作。
摘要由CSDN通过智能技术生成

数据库基础命令:

一、基础命令

1.启动服务

sudo /usr/local/MySQL/support-files/MySQL.server start

2.停止服务

sudo /usr/local/MySQL/support-files/MySQL.server stop

3.重启服务

sudo /usr/local/MySQL/support-files/MySQL.server restart

4.连接数据库

cd /usr/local/MySQL/bin/

./MySQL -uroot -p

接着按提示输入密码

5.远程连接

sudo ssh root@远程ip地址

接着输入远程服务器登录密码

MySQL -u root -p -h localhost

按提示输入密码

6.停止服务

exit/quit

7.查看版本

select version()

二、数据库命令

1.创建数据库

CREATE DATABASE 数据库名 CHARSET = UTF8;

2.选择/使用数据库

USE 数据库名;

3.删除数据库

DROP DATABASE 数据库名;

4.查看当前数据库

SELECT DATABASE();

5.查看数据库信息

SHOW CREATE DATABASE 数据库名;

三、表命令

1.查看当前数据库所有表

SHOW TABLES;

2.创建表

DEOP TABEL IF EXISTS 表名;

CREATE TABLE 表名(列名,类型,约束);

Eg:

DROP TABLE IF EXISTS example; #为避免同名表格影响,若有同名旧表,则清理

CREATE TABLE example(

id INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '序号',

order_id VARCHAR(255) NOT NULL COMMENT '订单号',

) ENGINE = INnoDB DEFAULT CHARSET = utf8;

1)建表约束

NOT NULL——列不能存储NULL值

UNIQUE——列唯一值

PRIMARY KEY——主键,确保(多)列有特定(且唯一)的记录可以查询

FOREIGN KEY——当前表与外部表格有相对应的参照字段进行关联

CHECK——确保列的值符合特定条件

DEFAULT——规定列没有赋值时的默认值

2)字符含义

INT——整数

VARCHAR——文本

AUTO_INCREMENT——自动编号

COMMENT——备注

ENGINE——引擎

CHARSET=UTF8——编码为UTF8

3.查看建表语句

SHOW CREATE TABLE 表名;

4.查看表结构

DESC 表名;

5.重命表名

RENAME TABLE 旧表名 TO 新表名;

6.更新表数据

ALTER TABLE 表名 ADD/CHANGE/MODIFY/DROP 列操作;

7.删除表

DROP TABLE 表名;

四、功能命令

1.

INSERT INTO 表名(列1, 列2...) VALUES(值1,值2...), (...), ...;

2.

DELETE FROM 表名 WHERE 条件;

*请必须加WHERE,否则删除所有相关数据,而不是选择性数据

3.

UPDATE 表名 SET 列1 = 值1, 列2 = 值2, ... WHERE 条件;

4.

(1)查询所有数据

SELECT * FROM 表名;

(2)查询特定数据

SELECT 列名 FROM 表名;

SELECT 列名 FROM 表名 LIMIT 起始列数,提取列数多少;

(3)去重查询

SELECT DISTINCT 列名 FROM 表名;

(4)条件查询

SELECT 列名 FROM 表名 WHERE 条件;

条件部分

1)相关运算符含义

= 等于

<> 不等于

!= 不等于

> 大于

< 小于

>= 大于等于

<= 小于等于

BETWEEN 在某个范围之内,或在...之间

LIKE 搜索某个特征/模式

IN 在选取的列的一定范围内的值

AND 并且

OR

AND&OR 组合使用

IS NULL

IS NOT NULL 非空

2)通配符含义(搭配LIKE使用)

% 替代0-多个字符

_ 替代1个字符

[ ] 选定列的任何单个字符

[^] 或 [!] 不在选定列的任何单个字符

(5)聚合函数

SELECT 聚合函数(列名) FROM 表名;

1)COUNT 计数

2)SUM 求和

3)MAX 最大值

4)MIN 最小值

5)AVG 均值

(6)分组

SELECT 列名 FROM 表名 GROUP BY 列名;

SELECT 列名 FROM 表名 GROUP BY 列名 HAVING 列名+条件;

(7)排序

SELECT 列名 FROM 表名 ORDER BY 列名; #升序

SELECT 列名 FROM 表名 ORDER BY 列名 DESC; #降序

SELECT 列名 FROM 表名 GROUP BY 列名 ORDER BY 列名; #分组后排序

(8)JOIN连接

JOIN主要将2个及以上的表格关联起来,共有LEFT JOIN,RIGHT JOIN,INNER JOIN,FULL JOIN/OUTER JOIN等7种用法。

1)INNER JOIN:若都存在至少一个匹配值,则返回行

SELECT 表1.字段1,表2.字段2 FROM 表1 INNER JOIN表2 ON 表1.相同外键=表2.相同外键;

2)LEFT JOIN:若右表没有匹配值,则返回左表所有的行

SELECT 表1.字段1,表2.字段2 FROM 表1 LEFT JOIN表2 ON 表1.外键=表2.外键;

3)RIGHT JOIN:若左表没有匹配值,则返回右表所有的行

SELECT 表1.字段1,表2.字段2 FROM 表1 RIGHT JOIN表2 ON 表1.外键=表2.外键;

4)FULL JOIN/OUTER JOIN:只要其中一个表有匹配值,则返回行

SELECT 表1.字段1,表2.字段2 FROM 表1 FULL JOIN表2 ON 表1.外键=表2.外键;(MySQL不支持此用法)

SELECT 表1.字段1,表2.字段2 FROM表1 LEFT JOIN 表2 ON表1.外键=表2.外键 UNION SELECT 表1.字段1,表2.字段2 FROM 表1 RIGHT JOIN表2 ON表1.外键=表2.外键;(MySQL用法)

(9)UNION联合

1)去重联合——UNION

SELECT 表1.字段1FROM 表1 UNION SELECT表2.字段2 FROM 表2;

2)不去重联合——UNION ALL

SELECT 表1.字段1FROM 表1 UNION ALL SELECT表2.字段2 FROM 表2;

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值