MySQL之DQL语句

文章目录

    • DQL语句
      • 指定查询
        • 查询全部
        • 查询部分数据
        • 别名查询
        • 使用order by子句
        • 拼接查询
        • 去重查询
        • WHERE – 条件过滤
        • 模糊查询
        • JOIN – 多表关联
        • 求和查询
        • 排序查询
        • 统计查询
        • 分页查询

DQL语句

DQL(Data Query Language)查询数据

  • 操作查询:select
  • 简单的查询,复杂的查询
  • 数据库中最核心的语言,最重要的语句
  • 使用频繁的语句

指定查询

查询全部

语法:

select 全部字段(*from 表名 ;

案例:

select id,username,password from demo;

select * from demo;
查询部分数据

语法:

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

案例:

select username,password from demo;
别名查询

语法:

select 字段1 AS 别名, 字段2 AS 别名 from 表名 AS 别名;

案例:

select  name AS 姓名,address as 地址 from students;

在这里插入图片描述

使用order by子句

对于结果集按照一个列或者多个列进行排序

语法:

select 字段1,字段2... from 表名 order by 字段1,字段2...  asc(升序)| desc(降序);

案例:

select * from demo1 order by age asc ;

在这里插入图片描述

拼接查询

语法:

select concat ('名字',字段) from 表名;

案例:

select concat('用户名',username) form demo;

在这里插入图片描述

去重查询

语法:

select distinct 字段 from 表名

案例:

select distinct age from demo

在这里插入图片描述

WHERE – 条件过滤

如果需要从表中选取指定的数据,可将 WHERE 子句添加到 SELECT 语句。

逻辑运算符语法描述
and &&a and b a && b逻辑与,两个多为真,结果为真
or ||a or b a|| b逻辑或,其中一个为真,则为真
not !not a ! a逻辑非,真为假,假为真
运算符号描述
=等于
<>不等于
>大于
<小于
>=大于等于
<=小于等于
between在某个范围内
like搜索某种模式

语法:

select 字段 from 表名 where 字段 运算符 值;

实例:

select age from demo  where age >18 and age <= 50;

select username from demo where username = '张三';

select age from demo where age between 1 and 18;
select * from students where age = 18 or iphone = 120;
模糊查询

语法:

select 字段 from 表名 where 字段  like ’字符‘;

实例

select username from demo where username like '张%';
select username form demo where username like '张_';
select username from demo where username like '% 张%';

语法:

select 字段 from 表名 where 字段 in();

实例:

select username from demo where username in('张三','李四');
JOIN – 多表关联
select * from students,demo where students.name = demo.name;

20220919094614142.png&pos_id=img-JE8sNteX-1702456383330)

JOIN 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。

有时为了得到完整的结果,我们需要从两个或更多的表中获取结果。我们就需要执行 join。

数据库中的表可通过键将彼此联系起来。主键(Primary Key)是一个列,在这个列中的每一行的值都是唯一的。在表中,每个主键的值都是唯一的。这样做的目的是在不重复每个表中的所有数据的情况下,把表间的数据交叉捆绑在一起。

我们需要再创建一个表:Orders。

create table orders (id_o number,orderno number,id_p number);
insert into orders values(1,11111,1);
insert into orders values(2,22222,2);
insert into orders values(3,33333,3);
insert into orders values(4,44444,4);
insert into orders values(6,66666,6);
select * from orders;

“Orders” 表中的 “Id_P” 列用于引用 “Persons” 表中的人,而无需使用他们的确切姓名。

select * from persons p,orders o where p.id_p=o.id_p;

可以看到,“Id_P” 列把上面的两个表联系了起来。

语法:

select 列名
from 表A
INNER|LEFT|RIGHT|FULL JOIN 表B
ON 表A主键列 = 表B外键列;

不同的 SQL JOIN:

下面列出了可以使用的 JOIN 类型,以及它们之间的差异。

  • JOIN: 如果表中有至少一个匹配,则返回行
  • INNER JOIN: 内部连接,返回两表中匹配的行
  • LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
  • RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
  • FULL JOIN: 只要其中一个表中存在匹配,就返回行

实例:

如果我们希望列出所有人的定购,可以使用下面的 SELECT 语句:

SELECT p.LastName, p.FirstName, o.OrderNo
FROM Persons p
INNER JOIN Orders o
ON p.Id_P = o.Id_P
ORDER BY p.LastName DESC;
求和查询
select sum(age) from students;
排序查询
-- 升序:asc,降序:desc
select * from students order by iphone asc;
统计查询
-- 年龄为89的数据
select sum(age = 89) from students;
-- 所有年龄的数据
select count(age) from students;
分页查询
-- 分页查询;参数0:起始值,2:每页显示2条数据
select * from students limit 0,2;

select * from students limit 2,2;

select * from students limit 4,2;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/243481.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spark集群部署

1.5 Spark集群部署 1.5.1 Spark部署模式 Local 多用于本地测试&#xff0c;如在eclipse&#xff0c;idea中写程序测试等。 Standalone 是Spark自带的一个资源调度框架&#xff0c;它支持完全分布式。 Yarn 生态圈里面的一个资源调度框架&#xff0c;Spark也是可以基于Yarn来…

Python:将numpy数据表示成base64

安装Pybase64库 pip install pybase64conda install pybase64 示例 在Python中&#xff0c;你可以使用numpy库和base64库将numpy数组编码为Base64字符串。以下是一个示例&#xff1a; import numpy as np import base64 # 创建一个numpy数组 data np.array([1, 2…

使用Netropy广域网模拟器测试简化SD-WAN测试

来源&#xff1a;艾特保IT 虹科干货丨使用Netropy广域网模拟器测试简化SD-WAN测试 原文链接&#xff1a;https://mp.weixin.qq.com/s/k5-5Ske9zOMzyx4e3JmtSw 欢迎关注虹科&#xff0c;为您提供最新资讯&#xff01; 文章速览&#xff1a; -为什么需要WAN模拟器&#xff1f;…

AttributeError: ‘BaichuanTokenizer‘ object has no attribute ‘sp_model‘

在使用baihcuan模型进行微调或推理时&#xff0c;遇到AttributeError: BaichuanTokenizer object has no attribute sp_model,针对这个问题issues204上进行了讨论。下面是亲身实践过的方法。 1. 问题 2. 解决方法 降低transformers版本 参考&#xff1a; CUDA:11.6 transfor…

Redis第1讲——入门简介

Java并发编程的总结和学习算是告一段落了&#xff0c;这段时间思来想去&#xff0c;还是决定把Redis再巩固和学习一下。毕竟Redis不论是在面试还是实际应用中都是极其重要的&#xff0c;在面试中诸如Redis的缓存问题、热key、大key、过期策略、持久化机制等&#xff1b;还有在实…

智能优化算法应用:基于鸽群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于鸽群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于鸽群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.鸽群算法4.实验参数设定5.算法结果6.参考文献7.MA…

12.12年末大促,退换货寄件5元起 !

促销新闻报道&#xff1a; 在双十二促销季&#xff0c;闪侠惠递携手圆通、申通、中通、京东、德邦推出了一系列寄件促销活动&#xff01;在这场活动中&#xff0c;退换货运费贵&#xff0c;你该怎么办&#xff1f;从今天开始&#xff0c;闪侠惠递和五大物流企业为您带来了一场…

架构简洁之道有感,谈谈软件组件聚合的张力

配图由腾讯混元助手生成 这篇文章介绍了软件架构设计中组件设计思想&#xff0c;围绕“组件间聚合的张力”这个有意思的角度&#xff0c;介绍了概念&#xff0c;并且结合架构设计示例对这个概念进行了进一步阐述。 组件聚合&#xff1f;张力&#xff1f;这标题&#xff0c;有种…

7+PPI+机器学习+实验,非肿瘤结合建模筛选生物标志物,可升级

今天给同学们分享一篇生信文章“Identification of diagnostic biomarkers and therapeutic targets in peripheral immune landscape from coronary artery disease”&#xff0c;这篇文章发表在J Transl Med期刊上&#xff0c;影响因子为7.4。 结果解读&#xff1a; 外周血中…

docker-compose 单机容器编排

docker-compose 单机容器编排 Dockerfile&#xff1a;先配置好的文件&#xff0c;然后bulid&#xff0c;镜像容器。 docker-compose 既可以基于dockerfile&#xff0c;也可以基于镜像&#xff0c;一键式拉起镜像和容器。 docker-compose 核心就是yml文件&#xff0c;可以定义…

idea__SpringBoot微服务11——整合Druid数据源(新依赖)(新注解)

整合JDBC 一、导入依赖二、配置Druid————————创作不易&#xff0c;如觉不错&#xff0c;随手点赞&#xff0c;关注&#xff0c;收藏(*&#xffe3;︶&#xffe3;)&#xff0c;谢谢~~ 接着 第10的 新注解&#xff1a; ConfigurationProperties ConfigurationPropert…

介绍一款上传漏洞fuzz字典生成工具

介绍一款上传漏洞fuzz字典生成工具 1.工具概述2.安装3.参数解析4.使用案例1.工具概述 upload-fuzz-dic-builder是一个上传漏洞fuzz字典生成脚本,生成时给的上传点相关信息越详细,生成的字典越精确 upload-fuzz-dic-builder 2.安装 克隆项目: git clone git@github.com:c…

TCP/IP详解——TCP 协议

文章目录 一、传输层协议1. TCP1.1 TCP 的字节流1.2 TCP 端口号1.3 TCP 头部1.4 TCP 选项部分字段1.5 TCP 三次握手1.6 TCP 三次握手不成功1.6.1 TCP 拒绝&#xff08;被RST重置&#xff09;1.6.2 TCP 半连接1.6.3 TCP 连接无响应 1.7 TCP 传输过程及原理1.7.1 TCP 传输过程1.7…

现代雷达车载应用——第2章 汽车雷达系统原理 2.4节 雷达波形和信号处理

经典著作&#xff0c;值得一读&#xff0c;英文原版下载链接【免费】ModernRadarforAutomotiveApplications资源-CSDN文库。 2.4 雷达波形和信号处理 对于连续波雷达来说&#xff0c;波形决定了其基本信号处理流程以及一些关键功能。本节将以FMCW波形为例&#xff0c;讨论信号…

【MySQL命令】show slave status\G 超详细全面解释

这个命令是DBA日常运维中常用来查看主从状态的命令&#xff0c;很多备份&#xff0c;监控工具也会使用到该命令监控主从状态是否正常&#xff0c;主从延迟&#xff0c;获取位点信息等。作为常用日常命令&#xff0c;一定要完全理解该命令的输出。今天主要结合 官方文档 和 实际…

iptables详解

1、介绍 iptables 是一个在 Linux 系统上用于配置和管理防火墙规则的工具。它允许系统管理员定义数据包的过滤规则、网络地址转换&#xff08;NAT&#xff09;规则和数据包的网络地址和端口的转发规则。iptables 提供了非常灵活和强大的功能&#xff0c;可以用于保护网络安全、…

Python数据科学视频讲解:Python序列的概念及通用操作

2.10 Python序列的概念及通用操作 视频为《Python数据科学应用从入门到精通》张甜 杨维忠 清华大学出版社一书的随书赠送视频讲解2.10节内容。本书已正式出版上市&#xff0c;当当、京东、淘宝等平台热销中&#xff0c;搜索书名即可。内容涵盖数据科学应用的全流程&#xff0c;…

Python 自动化之收发邮件(一)

imapclient / smtplib 收发邮件 文章目录 imapclient / smtplib 收发邮件前言一、基本内容二、发送邮件1.整体代码 三、获取邮件1.整体代码 总结 前言 简单给大家写个如何用Python进行发邮件和查看邮件教程&#xff0c;希望对各位有所帮助。 一、基本内容 本文主要分为两部分…

为什么FPGA是战略芯片?

FPGA&#xff08;Field Programmable Gate Array&#xff09;是在PAL&#xff08;可编程阵列逻辑&#xff09;、GAL&#xff08;通用阵列逻辑&#xff09;等可编程器件的基础上进一步发展的产物&#xff0c;它是作为一种半定制电路而出现的&#xff0c;既解决了定制电路的不足&…

c++知识总结

一 细碎知识 1.27 # 1.27.1 # pragma once 参考 C++学习笔记之pragma once的理解_pragma once什么意思-CSDN博客https://blog.csdn.net/lynnlee_36/article/details/105322937作用 保证只被编译一次,和#ifndef,#define,#endif功能相同 1.27.2 #if defined(__cplusplus…