MySQL基础------sql指令1.0(查询操作->select)

2023-10-30

 目录

前言:

单表查询

1.查询当前所在数据库

2.查询整个表数据

3.查询某字段

4.条件查询

5.单行处理函数(聚合函数)

 6.查询时给字段取别名

 7.模糊查询

 8.查询结果去除重复项

 9.排序(升序和降序)

10. 分组查询

 11.分页查询

联表查询

1.笛卡尔积现象

2.内连接查询

 3.左连接查询

4.右连接查询

 


前言:

        MySQL数据库是一种免费的数据库,我们可以通过官网去下载mysql服务器到本地,其中sql指令非常重要,我们可以去通过sql指令来操作数据库,那今天我们就学习sql指令中的查询操作(select)。

操作之前,先通过cmd管理员身份进入DOS指令窗口,然后输入net start mysql 指令打开服务器,然后就是登陆你的mysql。

select 查询的大致框架:

select 后面跟字段或者*(意思是全部) from 跟表名 后面就是条件了;

单表查询

当前表数据如图所示:(表名为user)

1.查询当前所在数据库

select database(); 

2.查询整个表数据

select *from 表名;

3.查询某字段

select 字段1,字段2…… from 表名; 

4.条件查询

 条件查询要使用到where去实现,其中条件包含以下运算符:

比较符号
=
!=
>
<
<=
>=

逻辑运算符号
and 
or 
not 

范围数据
between 两个值之间
not between 
in 在指定集合之间
not in 

select 字段…… from 表名 where 条件;

示例1: 

 示例2:

 示例3:

5.单行处理函数(聚合函数)

我们可以去通过mysql中的内置函数去实现一些函数功能,比如统计,去平均值,最大值小值等等。其单行处理函数如下所示:

sum(字段) 求和

upper(字段) 转大写

lower(字段) 转小写

max(字段) 取最大值

min(字段) 取最小值

avg(字段) 取平均值

count(*) 获取总条数

 

示例1:

示例2: 

 示例3:

 6.查询时给字段取别名

select 字段 as 别名 from 表名 ……

 7.模糊查询

关键字:

%: 匹配0个或者多个字符(null除外)
_: 匹配任意一个字符(多个_,就匹配对应的字符)

select 字段 from 表名 where 字段 like '%……';

示例:

查询名字带有 信 字的

select *from user where name like '%信%';

查询姓李的,而且名字只有两个字

select *from user where name like '李_';

示例1: 

 示例2:

 8.查询结果去除重复项

select distinct 字段 from 表名 ……;

示例:

select distinct belong from user;

(原来abc是多个的,查询去重) 

 9.排序(升序和降序)

一般来说sql查询的结果都是升序的,我们也可以去通过一些指令去控制升序/降序要求

升序:

select *from 表名 order by 字段;

降序:

select *from 表名 order by 字段 desc;

示例1:

示例2:

示例3:

10. 分组查询

关键字:group by 组

select count(*),belong from user group by belong;

注意:分组查询的查询字段也必须是具有分组性质的,比如上面所说的单行处理函数

 11.分页查询

select …… from 表名 where 条件 limit 起点,返回条数;

示例:select *from user where pj> 10 limit 1,5;

 如果返回的条数大于最大条数,结果就直接返回最大的条数;如果起点大于最大的条数就返回空

 

联表查询

联表查询可以实现两张或两张以上的表之间进行关系查询

表1:book

表2:author

1.笛卡尔积现象

select *from book,author;

 查询结果一共有63条也就是,book表中9条数据与author表中7条数据的乘积,这就是笛卡尔积现象,这种查询效率非常低下,而且需要的结果非常少,也就是说我只想要某一条结果,实际上查询出了全部结果,那我还要在这些结果找我想要的,所以千万别用这种指令!!!!!

2.内连接查询

select *from 表1 inner join 表2 on 连接条件;

示例select book.b_name, author.a_name from book inner join author on book.id = author.id;

 内连接返回的条数是按照其中一个表最短的条数返回的查询结果,遵循木桶效应

 3.左连接查询

select *from 表1 left join 表2 on 条件;

(查询结果最大的条数是按照表1为标准)

示例:select *from author left join book on book.id = author.id;

          select *from book left join author on book.id=author.id;

 示例1:

示例2: 

4.右连接查询

 右连接就跟左连接反过来,那就是以表2为标准

select *from 表1 right join 表2 on 条件;

示例:select *from author right join book on book.id=author.id;

          select *from book right join author on book.id=author.id;

示例1:

 

示例2:

 

 今天就先讲这么多吧,后面还有很多我会边学习边补充的。

分享一张壁纸:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL基础------sql指令1.0(查询操作->select) 的相关文章

  • 将多行合并为一行并根据行数附加列

    我正在尝试将同一个表的多行合并为一个 我有一个像这样的示例表 Col1 Col2 Col3 Col4 Col5 Col6 1 BH1 CB 12 CC CC Conveyor Mal 1 BH1 CB 104 ZC ZC Full Emp
  • Yii 查询时对相关模型的限制

    我遇到了极限问题 我正在使用的代码如下 model PostCategory model record model gt with array posts gt array order gt posts createTime DESC li
  • 从一个sql服务器选择到另一个sql服务器?

    我想将一台服务器 Data Old S1 中的一个表 T1 在 DB1 中 中的数据选择到另一台服务器 Data Latest S2 中的另一个表 T2 在 DB2 中 中的数据 我怎样才能做到这一点 请注意服务器的命名方式 查询也应该考虑
  • 在JavaFX中如何在表视图中添加带有数据的组合框

    我已经尝试了很多 但无法将数据库中的所有值填充到我的组合框表格单元格中 控制器 java public class controller GetConnection gc new GetConnection PreparedStatemen
  • 不是 select 中带有 MAX 的单组组函数

    Select sg gameno Max sg Year sg end sg hostcity country olympic name from Summergames s Country co where s country isoco
  • INNER JOIN 可用作 SELECT,但不能用作 DELETE [重复]

    这个问题在这里已经有答案了 为什么这个有语法错误 DELETE FROM print mailing request pmr INNER JOIN person p ON p id pmr person AND p email LIKE T
  • 如何在数据库中保存未来(!)日期

    这个问题专门涉及未来的日期和时间 对于过去的值 UTC 无疑是首选 我想知道是否有人对拯救生命的 最佳 方法有建议futureMySQL 数据库中的日期和时间 或者就此而言一般来说 特别是在该列可以保存不同时区时间的情况下 考虑到时区规则可
  • ORA-01749: 您不能向自己授予/撤销权限

    我正在运行以下查询RATOR MONITORING授予引用权限的架构RATOR MONITORING CONFIGURATION SMSC GATEWAY表到RATOR MONITORING schema GRANT REFERENCES
  • 将 mysql LONGTEXT 值转换为 VARCHAR 值?

    我有一个在用户 Facebook 墙上发布的功能 我发送到 facebook 的一件事是我从设置为 LONGTEXT 的 mysql 表中获取的一些文本 如果我将表设置为 LONGTEXT 则文本不会发送到 facebook 但如果我将表设
  • 更新每组单行

    的背景 我有一个临时表 其中包含唯一的 rowID OrderNumber 和 guestCount 等信息 RowID 和 OrderNumber 已存在于该表中 并且我正在运行一个新查询来填充每个 orderNumber 缺少的 gue
  • 使用 xmlagg 时出现子查询错误和太多值

    我在连接许多大型表中的所有数据时遇到问题 我昨天对此提出了问题 但不幸的是 listagg 似乎不是一个好的选择 链接子查询返回多行 https stackoverflow com questions 54651144 subquery r
  • 项目链接在 Wamp 服务器上不起作用

    我正在另一台计算机上安装 Wamp 服务器来运行中型数据库和 UI 我已成功阻止 IIS 并将服务器路由到 Localhost 8080 但是每当我尝试从 localhost 主页访问我的项目时 在 www 文件中 我被重定向到页面未找到错
  • 在 MySQL 中创建布尔列并将 false 作为默认值?

    我想在 MySQL 中创建一个表boolean默认值为的列false 但它默认接受 NULL 你必须指定0 意思是假 或1 意思是 true 作为默认值 这是一个例子 create table mytable mybool boolean
  • 如何对 SQL Server Express 进行实时更改

    我一直在使用 VS studio 开发一个 ASP NET Web 应用程序 我正在使用 SQL Server Express 在开发过程中 我一直在我的服务器上测试我的网络应用程序 每次我需要更新数据库时 我都会简单地删除旧数据库 位于我
  • 错误代码 13,SELECT INTO OUTFILE 问题

    我试图了解使用 INTO OUTFILE 命令时不断遇到问题的原因 我总是收到这个错误 ERROR 1 HY000 Can t create write to file var www p1 txt Errcode 13 SELECT pa
  • 在 Doctrine DQL 中选择 count() ,并使用左连接多对多单向关系,其中用户没有关系特定组

    情况 我尝试在 DQL 中为不属于特定组的用户选择 count 标准ManyToMany之间的单向关系User and Group实体来自FOSUserBundle and SonataUserBundle 系统 Symfony 2 5 D
  • 多级排序

    我有一个表 其中包含一些记录 其中包含名称 评级等字段 我首先想要根据评级将结果限制为 20 进行排序 然后在此结果集上想要进一步应用基于名称的排序 我知道要排序我们需要使用像这样的查询 Select from table order by
  • 有没有办法只安装mysql客户端(Linux)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有不需要安装整个mysql db安装包的Linux mysql命令行工具 我想做的是从服务器 1 应用程序服务器 执行将在服务器 2
  • MySQL 中的 group_concat 性能问题

    我添加了一个group concat到一个查询并杀死了性能 添加之前和之后的解释计划是相同的 所以我对如何优化它感到困惑 这是查询的简化版本 SELECT curRow curRow 1 AS row number docID docTyp
  • 如何在SqlAlchemy中执行“左外连接”

    我需要执行这个查询 select field11 field12 from Table 1 t1 left outer join Table 2 t2 ON t2 tbl1 id t1 tbl1 id where t2 tbl2 id is

随机推荐

  • #BDA#笔记#先导课:数据分析的定义和应用

    即席查询 即席查询 Ad Hoc 是用户根据自己的需求 灵活的选择查询条件 系统能够根据用户的选择生成相应的统计报表 即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的 而即席查询是由用户自定义查询条件的 GMV Gross Me
  • Unity 2d碰撞检测

    碰撞检测 Collider2d 射线检测函数 Raycast 与 Cast 函数 Overlap 检测函数 参数 PhysicsScene2D 类检测函数 Physics2D 类检测函数 MonoBehaviour 类碰撞检测函数 Coll
  • Spring Security实现登录

    前言 Spring Security是Spring框架下的一个用于身份验证和授权的框架 它可以帮忙管理web应用中的用户认证 授权以及安全性问题 本文将介绍如何使用Spring Security实现用户登录功能 本文主要包括以下内容 环境准
  • Java 之路 (六) -- 访问权限控制(Package、Public、protected、friendly、private)

    这一章内容比较少 也比较基础 不多废话 下面开始这一章的学习吧 学习内容 包 package 访问权限 public protected 默认 private 1 Package 1 原因 为了更好的组织类 Java 提供了包机制 用来区别
  • python如何显示html文档

    Python提供了多种库可以用来显示HTML文档 其中比较常用的是webbrowser和IPython display模块 使用webbrowser模块打开HTML文件 import webbrowser webbrowser open e
  • 【python爬虫】6.爬虫实操(带参数请求数据)

    文章目录 前言 项目 狂热粉丝 分析过程 什么是带参数请求数据 如何带参数请求数据 代码实现 被隐藏的歌曲清单 什么是Request Headers 如何添加Request Headers 复习 前言 先来复习一下上一关的主要知识吧 先热个
  • 【Python】算法刷题之二分查找

    二分查找 二分查找的秘密 模版写法 开始做题 69 x的平方 34 在排序数组中查找元素的第一个和最后一个位置 二分查找的秘密 二分查找法 其实也叫 折半查找 是一种效率较高的查找方法 同时它也告诉了我们使用的条件 首先线性表需要是有序的
  • 2020~2030年 中国智能驾驶市场和技术趋势分析及主流芯片方案概述

    分析及主流芯片方案概述智能驾驶已经成为中国用户买车时首选的配置之一 从L0到L2 的整个产品布局 已经是车厂卖车时候的重点宣传点 智能驾驶不同于自动驾驶 无论是法律法规和产品定义都有着明确且清晰的定义 用户本身智能驾驶产品的需求也各不相同
  • 安装IDA出现的error

    在安装IDA 7 0完之后使用时出现了如下问题 F IDA 反编译 IDA 7 0 plugins wince stub dll can t load file LoadLibrary F IDA 反编译 IDA 7 0 plugins w
  • Java zip解析

    Java zip解析 需求 项目中存在大量的模板需要更新替换 一个个手动更新效率太慢 所以需要做一个上传压缩包更新模板的功能 代码 压缩包解析 并返回相对路径和文件 解压zip 范围对应路径和模板文件 param zipName zip文件
  • 2021-12-23 网工基础(十四) 链路聚合的两种模式、堆叠、集群、IP路由基础

    一 链路聚合的两种模式 1 手工模式 管理员手工指定 无协议报文 没有开销 2 LACP模式 交换机之间会交互LACP的协议 会有一点儿报文交互 一般正常情况下推荐使用LACP模式 一般自动协商都会手工强制的要好 除非自动确实失败 无法成功
  • 背包九讲笔记--背包问题(内附代码实现)

    背包九讲 一 前言 最近在看背包九讲 将自己的理解给记录下来 基本思路那里 可以理解为将这个背包问题简化成是否要放下第i件物品 放下第i件物品就要重背包中取出重量等同的物品 关于优化空间 优化前dp 数组的值 代码 import java
  • 浅谈并发,为啥Java并发撸代码必须了解Java内存模型

    感谢参考原文 http bjbsair com 2020 04 01 tech info 18670 html 前言 在并发编程中引起线程不安全的原因 主要因为共享变量的可见性 重排序 原子性 也稍微的提了一下内存模型 那什么是内存模型呢
  • tshark 实践记录

    项目需要 临时研究了一下 因为主业不是这个 所以在这里记录一下 以便于需要的人参考 1 需要最终数据中包含端口号 过滤条件 udp tcp 2 把pcap导出成txt tshark V r 输入文件 如 pcap gt 输出文件 txt 3
  • c++string替换指定位置字符_小白打怪进阶之路:Day3 用字母位置替换字符串

    几句废话 周末愉快 如果周末你还在学习 那可以说是相当优秀 当一个人知道自己想要什么的时候 脚步也会越来越坚定 给奋斗中的你点赞 下面开始今天的打怪 请听题 这个题目的要求是 给定一个字符串 用它在字母表中的位置替换每个字母 如果文本中的任
  • blender快捷键

    1 shift a 添加物件 2 rgs 这三个按键 可以分别对模型进行旋转移动缩放 3 shift d 可以实现复制功能 alt d 关联复制 4 使用 z 键可以切换到线框模式 再按一次切换回来 5 数字键旋转 中心 6 tab 按键可
  • 数据的导入

    Excel数据的导入就是相当于批量的新增 可以快速的添加多条数据 给导入按钮一个点击事件 打开导入的模态框 下载模板文件 点击下载按钮可以下载文件的功能 操作如下 首先要把模板放到项目中对应的目录下 获取到文件的物理路径 定义一个方法 返回
  • 基于Hugging Face的transformers包的微调模型训练

    transformers API参考链接 https huggingface co docs transformers v4 21 2 en training train py from datasets import load datas
  • IPD产品开发流程详解

    为什么80 的码农都做不了架构师 gt gt gt 集成产品开发 Integrated Product Development 简称IPD 是一套产品开发的模式 理念与方法 IPD的思想来源于美国PRTM公司出版的 产品及生命周期优化法一书
  • MySQL基础------sql指令1.0(查询操作->select)

    目录 前言 单表查询 1 查询当前所在数据库 2 查询整个表数据 3 查询某字段 4 条件查询 5 单行处理函数 聚合函数 6 查询时给字段取别名 7 模糊查询 8 查询结果去除重复项 9 排序 升序和降序 10 分组查询 11 分页查询