SQL Sever 基础知识 - 数据筛选

SQL Sever 基础知识 - 四、数据筛选

  • 四、筛选数据
    • 第1节 DISTINCT - 去除重复值
      • 1.1 SELECT DISTINCT 子句简介
      • 1.2 SELECT DISTINCT 示例
        • 1.2.1 DISTINCT 一列示例
        • 1.2.2 DISTINCT 多列示例
      • 1.2.3 DISTINCT 具有 null 值示例
      • 1.2.4 DISTINCT 与 GROUP BY 对比
    • 第2节 WHERE - 过滤查询返回的行
      • 2.1 WHERE 子句简介
      • 2.2 WHERE 子句示例
        • 2.2.1 使用简单等式查找行
        • 2.2.2 查找满足两个条件的行
        • 2.2.3 使用比较运算符查找行
        • 2.2.4 查找满足两个条件之一的行
        • 2.2.4 查找值在两个值之间的行
          • 2.2.4.1 使用between...and...关键字
          • 2.2.4.2 使用判断符
        • 2.2.5 在值列表中查找具有值的行
        • 2.2.6 查找值包含字符串的行 - 模糊查询

更多SQL Sever基础知识可查看:SQL Sever 基础知识(全)

特别说明
  本文章所用的所有数据库、数据表及其数据皆为AI随机生成,不涉及个人隐私,且仅供学习使用!

四、筛选数据

第1节 DISTINCT - 去除重复值

SELECT DISTINCT 子句来检索指定列列表中的唯一非重复值。

1.1 SELECT DISTINCT 子句简介

SELECT DISTINCT 子句语法:

SELECT DISTINCT <列名>
FROM <表名>

Note:
① 查询仅返回指定列中的非重复值,即从结果集中删除列中的重复值。
② 查询使用 SELECT 列表中所有指定列的值的组合来评估唯一性。
③ 将 DISTINCT 子句应用于具有NULL的列,则 DISTINCT 子句将仅保留一个NULL并消除另一个, DISTINCT 子句将所有NULL“值”视为相同的值。

1.2 SELECT DISTINCT 示例

1.2.1 DISTINCT 一列示例

查询CustomerInfo表中客户所在省份:

 select distinct Provincefrom CustomerInfoorder by Province

执行结果:
在这里插入图片描述

1.2.2 DISTINCT 多列示例

查询CustomerInfo表中客户所在省份和城市:

 select distinct Province,Cityfrom CustomerInfoorder by Province

执行结果:
在这里插入图片描述

1.2.3 DISTINCT 具有 null 值示例

1.2.4 DISTINCT 与 GROUP BY 对比

查询CustomerInfo表中客户所在省份和城市(分组查询):

 select Province,Cityfrom CustomerInfogroup by Province,Cityorder by Province,City

执行结果:
在这里插入图片描述
与前面使用DISTINCT对比结果相同,相当于以下使用 DISTINCT 运算符的查询。
DISTINCTGROUP BY 子句都通过删除重复项来减少结果集中返回的行数。但是,如果要对一个或多个列应用聚合函数,则应使用 GROUP BY 子句。

第2节 WHERE - 过滤查询返回的行

根据一个或多个条件筛选查询输出中的行。

2.1 WHERE 子句简介

使用 SELECT 语句查询一个表的数据时,会获得该表的所有行,这不一定必要,有时候可能只处理一组。要从表中获取满足一个或多个条件的行组,可使用where子句,语法如下所示:

 select <列名1>,<列名2>,...from []where <条件>

以上语法:
① 在 WHERE 子句中,指定搜索条件以筛选由 FROM 子句返回的行。 WHERE 子句仅返回导致搜索条件计算为 TRUE 的行。
② 搜索条件是逻辑表达式或多个逻辑表达式的组合。在SQL中,逻辑表达式通常称为谓词。
③ 请注意,SQL Server使用三值谓词逻辑,其中逻辑表达式的计算结果可以是 TRUEFALSEUNKNOWN 。 WHERE 子句不会返回任何导致谓词计算为 FALSEUNKNOWN 的行。

2.2 WHERE 子句示例

2.2.1 使用简单等式查找行

查询CustomerInfo表中已签收的所有顾客信息:

 select *from CustomerInfowhere Status = '已签收'

执行结果:
在这里插入图片描述

2.2.2 查找满足两个条件的行

查询CustomerInfo表中广东省已签收的所有顾客信息:

 select *from CustomerInfowhere Status = '已签收' and Province = '广东省'

执行结果:
在这里插入图片描述

2.2.3 使用比较运算符查找行

查询CustomerInfo表中已签收且年龄大于30岁的所有顾客信息:

 select *from CustomerInfowhere Status = '已签收' and Age > 30

执行结果:
在这里插入图片描述

2.2.4 查找满足两个条件之一的行

查询CustomerInfo表中是湖北或者北京地区的所有顾客信息:

 select *from CustomerInfowhere Province = '湖北省' or Province = '北京市'

执行结果:
在这里插入图片描述
OR 关键字:满足条件之一的任何数据都包含在结果集中

2.2.4 查找值在两个值之间的行
2.2.4.1 使用between…and…关键字

查询年龄在30到35岁之间女性用户信息:

 select *from CustomerInfowhere Age between 30 and 35 and Gender = 'Female'

执行结果:
在这里插入图片描述

2.2.4.2 使用判断符

查询年龄在30到35岁之间女性用户信息:

 select *from CustomerInfowhere  Age >= 30 and Age <= 35 and Gender = 'Female'

执行结果:
在这里插入图片描述

2.2.5 在值列表中查找具有值的行

查询在湖北、湖南和北京地区的客户信息“

 select *from CustomerInfowhere  Province in ('湖北省','湖南省','北京市')

执行结果:
在这里插入图片描述

2.2.6 查找值包含字符串的行 - 模糊查询

查找‘刘’姓客户的所有信息:

 select *from CustomerInfowhere  CusName like'刘%'

执行结果:
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jvm基本概念,运行的原理,架构图

文章目录 JVM(1) 基本概念:&#xff08;2&#xff09;运行过程 今天来和大家聊聊jvm&#xff0c; JVM (1) 基本概念: JVM 是可运行Java代码的假想计算机&#xff0c;包括一套字节码指令集、一组寄存器、一个栈一个垃圾回收&#xff0c;堆 和 一个存储方法域。JVM 是运行在操作…

【智能家居】三、添加语音识别模块的串口读取功能点

语音识别模块SU-03T 串口通信线程控制代码 inputCommand.h&#xff08;输入控制指令&#xff09;voiceControl.c&#xff08;语音控制模块指令&#xff09;main.c&#xff08;主函数&#xff09;编译运行结果 语音识别模块SU-03T AI智能语音识别模块离线语音控制模块语音识别…

YOLOv8界面-目标检测+语义分割+追踪+姿态识别(姿态估计)+界面DeepSort/ByteTrack-PyQt-GUI

YOLOv8-DeepSort/ByteTrack-PyQt-GUI&#xff1a;全面解决方案&#xff0c;涵盖目标检测、跟踪和人体姿态估计 YOLOv8-DeepSort/ByteTrack-PyQt-GUI是一个多功能图形用户界面&#xff0c;旨在充分发挥YOLOv8在目标检测/跟踪和人体姿态估计/跟踪方面的能力&#xff0c;与图像、…

2023.11.30 关于 MyBatis 动态 SQL 的使用

目录 引言 if 标签 trim 标签 where 标签 set 标签 foreach 标签 引言 动态 sql 是 MyBatis 的强大特性之一允许你根据输入的参数动态地构建 sql 语句从而在运行时根据不同的条件生成不同的 sql 核心思想 基于提供的数据和条件&#xff0c;能够修改、增加、删除 sql…

有点迷糊class和初始化参数的用法了

翻阅手册https://www.runoob.com/python3/python3-class.html Python从设计之初就已经是一门面向对象的语言&#xff0c;正因为如此&#xff0c;在Python中创建一个类和对象是很容易的。本章节我们将详细介绍Python的面向对象编程。 如果你以前没有接触过面向对象的编程语言&…

力扣.特定深度节点链表(java BFS解法)

Problem: 面试题 04.03. 特定深度节点链表 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 根据题意需要取出二叉树每一层节点组成的链表并将其添加到一个数组中。我们将该要求分解成如下的操作&#xff1a; 1.利用BFS获取二叉树每一层的节点 2.利用链表的尾插法将二…

Elasticsearch 如何处理 Aggs 顺序中的大写字母和小写字母?

Elasticsearch 排序允许你根据特定条件对搜索结果进行排序。 然而&#xff0c;在排序时处理区分大小写时&#xff0c;Elasticsearch 将大写和小写字母视为不同的字符&#xff0c;分别对它们进行排序。 这是因为 ASCII 表顺序是从大写 A 到小写 z。 默认情况下&#xff0c;Elas…

6大关键词:尝新/随心/低忠诚···,全面解读食品饮料行业发展趋势与消费者洞察|徐礼昭

内容&#xff1a;重构零售实验室&商派 《2023食品饮料行业零售数字化洞察报告》节选 作者&#xff1a;徐礼昭&#xff08;商派市场负责人&#xff0c;重构零售实验室负责人&#xff09; 如今品牌的影响力不再止于资本与业绩数字&#xff0c;更多是在产品核心价值以及消费…

Xilinx FPGA平台DDR3设计详解(二):DDR SDRAM组成与工作过程

本文主要介绍一下DDR SDRAM的基本组成以及工作过程&#xff0c;方便大家更好的理解和掌握DDR的控制与读写。 一、DDR SDRAM的基本组成 1、SDRAM的基本单元 SDRAM的基本单元是一个CMOS晶体管和一个电容组成的电路。 晶体管最上面的一端&#xff0c;称作栅极&#xff0c;通过…

005、简单页面-容器组件

之——布局 目录 之——布局 杂谈 正文 1.布局基础知识 2.Column 3.Row 4.实践 杂谈 布局容器组件。 一个丰富的页面需要很多组件组成&#xff0c;那么&#xff0c;我们如何才能让这些组件有条不紊地在页面上布局呢&#xff1f;这就需要借助容器组件来实现。 容器组件是…

C语言中的格式化输出符号:%d %c %p %x等

文章目录 概览%d%c%d和%c的区别%p%x %X输出浮点数参考 概览 C语言中的格式化输出符号有很多&#xff0c;以下是一些常见的&#xff1a; %d 或 %i&#xff1a;用于输出十进制整数。 %u&#xff1a;用于输出无符号十进制整数。 %f&#xff1a;用于输出浮点数。 %s&#xff1a;用…

通义千问 模型学习 和 SDK试用

通义千问-14B-Chat-Int4 模型库 (modelscope.cn) **通义千问-14B&#xff08;Qwen-14B&#xff09;**是阿里云研发的通义千问大模型系列的140亿参数规模的模型。Qwen-14B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样&#xff0…

灯光开不了了,是不是NVIDIA的问题

如果你跟我一样灯光亮度调节不了了&#xff0c;然后显示适配器又没有了&#xff0c;你看一下是不是和我这个大怨种一样把NVIDIA卸了&#xff0c;为了这个东西&#xff0c;这屏幕亮瞎我的眼镜&#x1f622;&#x1f622;。只需要进入官网&#xff0c;你就可以直接找到&#xff0…

【el-form】表单label添加?及tooltip

<el-form-item><span slot"label"><el-tooltip :content"tooltip提示框内容" placement"top"><i class"el-icon-question"></i></el-tooltip>{{ $t(menu.status) }}</span><el-radio-gr…

某公司前端笔试题(12.30)

1、对象数组去重&#xff1a; 数组去重&#xff1a; const a[{a:1,b:2},{a:2},{a:2},{a:1,c:3},{b:2,a:1}] 结果&#xff1a;[{a:1,b:2},{a:2},{a:1,c:3}] // 判断两个对象的属性值是否一致 const a [{ a: 1, b: 2 }, { a: 2 }, { a: 2 }, { a: 1, c: 3 }, { b: 2, a: 1 }] co…

报错:执行sudo gedit时 No protocol specifiedUnable to init server: 无法连接: 拒绝连接

1.问题描述 在执行sudo gedit编辑文件时&#xff0c;报错连接不上服务&#xff1a; 2.问题解决 2.1先安装Vncserver sudo apt-get update sudo apt-get install tightvncserver2.2执行 vncserver 按提示输入密码&#xff0c;不宜过短 2.3若出现提示warning 则按提示执行&…

C#之扩展方法详解

前言&#xff1a; 我们想要向一个类型中添加方法&#xff0c;可以通过以下两种方式&#xff1a; 1.修改源代码。 2.在派生类中定义新的方法。 但是这两种方式都有缺点&#xff0c;1如果是别人的代码&#xff0c;你对其直接进行修改&#xff0c;可能破坏代码的完整性&#x…

Windows11系统下MemoryCompression导致内存占用率过高

. # &#x1f4d1;前言 本文主要是win11系统下CPU占用率过高如何下降的文章&#xff0c;如果有什么需要改进的地方还请大佬指出⛺️ &#x1f3ac;作者简介&#xff1a;大家好&#xff0c;我是青衿&#x1f947; ☁️博客首页&#xff1a;CSDN主页放风讲故事 &#x1f304;每日…

【STM32】TIM定时器

第一部分&#xff1a;定时器基本定时的功能&#xff1b; 第二部分&#xff1a;定时器的输出比较功能&#xff1b; 第三部分&#xff1a;定时器输入捕获的功能&#xff1b; 第四部分&#xff1a;定时器的编码接口。 1 TIM简介 TIM&#xff08;Timer&#xff09;定时器&#…

STM32GPIO速度配置究竟改变了什么-笔记

STM32GPIO速度配置究竟改变了什么-笔记 摘要STM32引脚内部框图STM32时钟树端口寄存器I/O交流特性定义 摘要 一般有 Low、Medium、High&#xff0c;三种速度选择。速度配置变了硬件什么状态&#xff1f; 对 GPIO 的输入输出信号有什么影响&#xff1f; 编程时如何选取速度参数&…