MySQL语句学习第二篇_数据库

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 专栏记录MySQL的学习,感谢大家观看。 本章的专栏📚MySQL语法学习 本人的博客:如烟花般绚烂却又稍纵即逝的主页 |

目录

MySQL是什么?

Mysql是一个客户端-服务器结构的程序

客户端:主动发起请求

服务器:被动接受请求

服务器服务多个客户端,一般进行7x24小时服务。

mysql的服务器,是真正的本体,复杂保存和管理数据,数据都存储在硬盘中。

MySQL是一个"客户端-服务器"结构的程序。

客户端发起请求进行的操作,都会通过请求发送给服务器接受请求,操作后返回给客户端。

  • 硬盘和内存的区别:

硬盘:速度慢,空间大,硬盘数据持久保存,成本费用低。

内存:速度快,空间小,内存数据容易丢失,成本费用高。


关于数据库的基础操作

mysql服务器程序,可以在硬盘中组织保存很多数据。

mysql服务器上有很多表,将许多具有关联关系的表放在一起,构成一个数据集合,被称之为数据库,在mysql服务器上可以有多个这样的数据库。


MySQL终端基础操作

启动mysql命令:

powershell 复制代码
sudo mysql.server start

路径指令:

powershell 复制代码
PATH="$PATH":/usr/local/mysql/bin

进行mysql命令行的指令:

powershell 复制代码
mysql -u root -p

数据库相关指令

显示数据库指令:

powershell 复制代码
show databases;

创建数据库指令:

powershell 复制代码
create database database_name;

存储汉字指令:

bash 复制代码
charset utf8;or character set utf8;

删除数据库指令:

bash 复制代码
drop database database_name;

选中数据库指令:

bash 复制代码
use database_name;

数据表相关指令

创建表指令:

powershell 复制代码
create table table_name(typeName,type,typeName,type);

查看指定表的结构指令:

bash 复制代码
desc table_name;

数据表中的数据查询指令

1.新增插入数据指令:

bash 复制代码
insert into table_name values(val,.....);

2.插入多行数据指令:

bash 复制代码
insert into table_name values(val,val),(val,val)....插入多条;

3.指定列插入数据指令:

bash 复制代码
insert into table_name(colName,colName...)values(val,val...);

  • 查询数据
全列查询

1.全列查询指令:

bash 复制代码
select *from table_nale;

指定列查询

2.指定列查询指令:

bash 复制代码
select colName,colName .....from table_name;

查询的字段位表达式

3.查询字段为表达式指令:

如select 列的名称 操作数(operator) 10 from 数据表;

如select 列的名称 操作数(operator) 列的名称 from 数据表;
在查询的时候,写做由列名构成的表达式,把这一列中的所有行带入到表达式中,之后参与运算,不会修改原始服务器上的数据,这里只是修改在最终相应的临时的结果中做了计算。

这里查询的时候,是把服务器的数据读出来后返回给了客户端,以临时表的形式来进行展示。

bash 复制代码
select colName operator colName....  from table_name;
#for example
select name,Chinese+English from examGrade;

别名 as

4.指定别名表达式指令:

查询的时候给列/表达式/表指定别名:

select 表达式(operator) as 别名 from 表名;

bash 复制代码
 select name,Chinese+English+Math as inTotal from examGrade;

去重 distinct

5. 去重查询指令:

将重复出现的元素去除

bash 复制代码
select distinct valName,valNmae from table_name;
#for example
select distinct name,age from table_name;
排序 order by

6.查询排序指令:

MySQL是一个客户端服务器结构的程序,把请求发给服务器之后,服务器进行查询数据,并且把查询到的结果进行排序之后,在组织响应的数据返回给客户端。此处排序是临时数据。
asc :升序
desc:降序
不添加升序/降序指令默认升序。
排序以行的形式发生改变

bash 复制代码
select valName,from exam order by valName asc/desc;
#for example 
select name, math from exam order by math;

条件查询 where

7.范围查询指令
1.BETWEEN_AND...

bash 复制代码
select valName1,ValName2 from base_name where valName2 bewteen 10 and 20;
# for example
select name,age from student where age between 10 and 20;
# or
select name,age from student where age>=10 and age<=20;

2.IN

bash 复制代码
#Query the elements contained in the table
select valName1 ,valName2 from base_name where valName1 in('val');
#for example
select name,age from student where name in('lisi');

8.模糊查询:
like

bash 复制代码
#查询以关键词开头的内容
select valName1 ,valName2 from base_name where valName1	like 'val%';
#查询以关键词结尾的内容
select valName1 ,valName2 from base_name where valName1	like '%val';
#查询包含关键词的内容
select valName1 ,valName2 from base_name where valName1	like '%val%';

分页查询limit

分页查询:

bash 复制代码
#limit限制查询的行
#offset是一个偏移量,作为一个下标
select valName1,valNmae2,from base_name limit ... offset ...;
相关推荐
heze0929 分钟前
sqli-labs-Less-18自动化注入方法
mysql·网络安全·自动化
InterestOriented33 分钟前
破解银发学习痛点 兴趣岛 “普惠 + 品质” 模式打造积极老龄化范本
大数据·人工智能·学习
木风小助理37 分钟前
PostgreSQL基础知识——DDL深度解析
数据库·postgresql
hanqunfeng40 分钟前
(四十四)Redis8 新增的数据类型 -- Vector Set
数据库·redis·缓存
HyperAI超神经1 小时前
IQuest-Coder-V1:基于代码流训练的编程逻辑增强模型;Human Face Emotions:基于多标注维度的人脸情绪识别数据集
人工智能·深度学习·学习·机器学习·ai编程
testpassportcn1 小时前
UiPath-ADPV1 認證介紹|Automation Developer Professional v1
网络·学习·改行学it
生擒小朵拉1 小时前
ROS1学习笔记(二)
笔记·学习
梦梦代码精2 小时前
BuildingAI vs Dify vs 扣子:三大开源智能体平台架构风格对比
开发语言·前端·数据库·后端·架构·开源·推荐算法
纪莫3 小时前
技术面:MySQL篇(InnoDB的锁机制)
java·数据库·java面试⑧股
Filotimo_3 小时前
在java开发中,cron表达式概念
java·开发语言·数据库