SQL简单查询-2

目录

第一关任务描述

相关知识

检索数据表中一个字段的内容

检索数据表中多个字段的内容

检索数据表中所有字段的内容

编程要求

测试说明

第一关实验代码:

 第二关任务描述

相关知识

带限制条件的查询

表达式查询

编程要求

第二关实验代码

第三关任务描述

相关知识

使用WHERE语句检索单范围数据

使用WHERE语句检索双范围数据

使用WHERE语句检索不匹配某条件的语句

编程要求

测试说明

第三关实验代码


第一关任务描述

本关任务:

  • 用 SELECT 语句检索数据表中指定字段的数据;

  • 用 SELECT 语句检索数据表中所有字段的数据。

相关知识

为了完成本关任务,你需要掌握:1.如何获取数据表中指定字段的数据,2.如何获取数据表中的所有数据。

若想使用 SELECT 语句来检索数据表中的数据,你至少得弄清楚两个重要的信息:(1) 你想检索的是什么?(2) 你想检索的内容它在什么地方?

检索数据表中一个字段的内容

我们将从最简单的 SELECT 语句开始学习。

语法规则为: SELECT 字段名 FROM 表名

举个例子 我们想从表 Customers 中得到 cust_name 字段所有的内容,即所有人的姓名。表 Customers 的内容如下图所示:

输入:

SELECT cust_name
FROM Customers

输出:

我们成功从表 Customers 中检索到了字段 cust_name 的内容。

检索数据表中多个字段的内容

如果我想检索更多的字段呢?当然可以做到,而且语法结构与检索单个字段的内容类似,只需要你把想要检索的字段,统统放到 SELECT 后面就可以了,记得要加逗号隔开。

语法规则为: SELECT 字段名1, 字段名2, 字段名3 FROM 表名

举个例子 我们想从表 Customers 中得到 cust_id 和 cust_name 字段所有的内容。

输入:

SELECT cust_id, cust_name
FROM Customers

输出:

可以看到,我们成功从表 Customers 中检索到了字段 cust_id 和 cust_name 的内容。

检索数据表中所有字段的内容

如果我想检索一张表内的所有字段呢?是不是需要我把字段一个一个列出来呀?如果我不记得字段都有哪些了怎么办呢?当然有解决办法! 我们可以通过在 SELECT 语句后使用 * 来返回表内所有字段的内容。

语法规则为: SELECT * FROM 表名

举个例子 我们想从表 Customers 中得到所有字段的内容。

输入:

SELECT *
FROM Customers

输出:

我们成功输出了表 Customers 中所有字段的所有内容。很简单对不对?

下面轮到你们来试一试了。

编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。 你只需根据右侧提示,完成以下任务:

  • 补全右侧代码片段中 retrieving multiple column 下 Begin-End 区间的代码,检索表 Products 中字段 prod_name 和 prod_price 的所有内容;

  • 补全右侧代码片段中 retrieving all column 下 Begin-End 区间的代码,检索表 Products 中所有字段的内容。

其中表 Products 的结构如下图所示;

测试说明

测试过程:

  • 本关涉及到的测试文件是 step1_test.sh ,平台将运行用户补全的 step1.sql 文件,得到数据;

  • 将得到的数据与答案比较,判断代码是否正确。

如果操作正确,你将得到如下的结果:

第一关实验代码:

USE Mall
GOSET NOCOUNT ON---------- retrieving multiple column ----------
-- ********** Begin ********** --
select prod_name,prod_price from Products;-- ********** End ********** --GO---------- retrieving all column ----------
-- ********** Begin ********** --
select * from Products;-- ********** End ********** --GO

 第二关任务描述

本关任务:

  • 查询数据表中的指定字段的数据;

  • 查询数据表中指定字段运算后的数据。

相关知识

为了完成本关任务,你需要掌握:1.使用限制关键字查询数据表中的指定字段的内容,2.使用运算符查询数据表中指定字段运算后的内容。

带限制条件的查询

SELECT 语句可以帮你返回所有匹配的内容,甚至整张表的内容。但是如果你仅仅是想要第一行的数据或者前几行的数据怎么办呢?好消息是我们可以通过限制条件来查询,不过限制条件的语法在各个数据库中的语法是不同的。在 SQL Server 中:

语法规则为: SELECT TOP 行数 字段名 FROM 表名

举个例子 我们想从表 Customers 中得到 cust_name 字段的前 3 行内容。表 Customers 的内容如下图所示:

输入:

SELECT TOP 3 cust_name
FROM Customers

输出:

当然,如果你使用的是 MYSQL 或者其他数据库,语法可不一样啊,你得去问 google 咯^-^。

表达式查询

有时候,你并不想知道某个字段的内容,而是想知道经过处理后的内容。这种情况有很多。比如,你想知道这一批的书打6折后都是多少钱?你想知道字段 A 和字段 B 加起来是多少?这是可以做到的,我们可以使用表达式查询来达到此目的。

语法规则为: SELECT 包含字段名的表达式 AS 新字段名 FROM 表名

其中,表达式计算的结果会放在新字段名下面,但是新字段名并没有存储在表中,而是暂时把结果返回给你,供你参考。

举个例子 我们想从把表 Customers 中每位消费者的 cust_id 都 +1 。表 Customers 的内容与上例的相同。

输入:

SELECT cust_id, cust_id+1 as new_cust_id
FROM Customers

输出:

编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。 你只需:

  • 补全右侧代码片段中 retrieving with limited 下 Begin-End 区间的代码,检索表 Products 中字段 prod_name 的前两项内容;
  • 补全右侧代码片段中 retrieving with expression 下 Begin-End 区间的代码,检索表 Products 中字段 prod_price 的内容,并检索到字段 prod_price 打8折后的价钱,命名该打折后的价格为 discount_price 。

其中表 Products 的结构如下图所示:

测试说明

测试过程:

  • 本关涉及到的测试文件是 step2_test.sh ,平台将运行用户补全的 step2.sql 文件,得到数据;

  • 将得到的数据与答案比较,判断代码是否正确。

如果操作正确,你将得到如下的结果:

第二关实验代码

USE Mall
GoSET NOCOUNT ON---------- retrieving with limited ----------
-- ********** Begin ********** --
select top 2 prod_name 
from Products;-- ********** End ********** --
GO---------- retrieving with expression ----------
-- ********** Begin ********** --
select prod_price,(prod_price*0.8) as discount_price
from Products-- ********** End ********** --
GO


第三关任务描述

本关任务:使用 WHERE 语句和逻辑表达式,检索数据表中指定字段的符合条件的数据。

相关知识

为了完成本关任务,你需要掌握:如何使用 WHERE 语句和操作符来选择符合条件的数据。

在实际情况中,我们不仅需要对某字段的全部数据进行检索,更多的是需要对符合我们需求的数据进行检索。SQL 语言的发明者当然想到了这些,为我们提供了更多的方法来检索你想要的数据。

WHERE 语句就是这样一种存在,只要把你的需求正确地放在 WHERE 后边,它就能帮你检索到你想要的内容。

下表为与 WHERE 语句搭配的操作符列表:

使用WHERE语句检索单范围数据

如果你想在房屋中介数据库中,寻找小于100万的房子,你应该怎么做?你是不是很自然的就想到了要用操作符 < 的。

让我们举个例子来看看,检索单范围数据是怎么实现的:

我们想从表 Customers 中找到消费大于 1000 的人。表 Customers 的内容如下图所示:

输入:

SELECT cust_name, cost
FROM Customers
WHERE cost > 1000

输出:

不仅是 > ,其他操作符 < , <= , >= , !< , !> 的使用方法也是一样的。

使用WHERE语句检索双范围数据

还有一种情况,就是你心目中有一个理想的区间范围。比如你想买房,不能太便宜,因为便宜的有可能又小又偏僻,也不能太贵,因为。。。呵呵大家懂的。这时候,你就需要划定一个范围,SQL 很贴心的为大家提供了自然语言关键字,用来划定数字的范围。

语法规则为: WHERE 字段名 BETWEEN 数字1 AND 数字2

举个例子 我们想从表 Customers 中找到消费在 1000~3000 之间的人。表 Customers 的内容和上例相同。

输入:

SELECT cust_name, cost
FROM Customers
WHERE cost BETWEEN 1000 AND 3000

输出:

Tips: 注意,使用 BETWEEN...AND... 时一定要记住较小的数在前边,较大的数在后边!

使用WHERE语句检索不匹配某条件的语句

有很多人可能有过这样的感觉,问你想要什么样的男/女朋友,你可能说想要这样的,那样的,好像都不错,看感觉吧。虽然你可能不知道你最想要什么,但是你一定知道你不想要什么。

SQL 语句也一样,它为你提供了选择不想要什么的机会。

举个例子 我们想从表 Customers 中找到消费者不在 New York 的人。表 Customers 的内容和上例相同。

输入:

SELECT cust_name, cust_city
FROM Customers
WHERE cust_city <> 'New York'

Tips: 注意,在 SQL Server 中,不等于只能用 <> 符号,不能使用 != 符号。

编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。 你只需:

  • 补全右侧代码片段中 retrieving with range 下 Begin-End 区间的代码,检索表 Products 中字段 prod_price 价钱介于 3 和 5 的内容,要求显示出商品名称和价钱;

  • 补全右侧代码片段中 retrieving with nomatches 下 Begin-End 区间的代码,检索表 Products 中除了 Lion toy 的商品名称和价钱。

其中表 Products 的内容如下图所示:

测试说明

测试过程:

  • 本关涉及到的测试文件是 step3_test.sh ,平台将运行用户补全的 step3.sql 文件,得到数据;

  • 将得到的数据与答案比较,判断代码是否正确。

如果操作正确,你将得到如下的结果:

第三关实验代码

USE Mall
GoSET NOCOUNT ON---------- retrieving with range ----------
-- ********** Begin ********** --
select prod_name,prod_price
from Products
where prod_price between 3 and 5-- ********** End ********** --GO---------- retrieving with nomatches ----------
-- ********** Begin ********** --
select prod_name,prod_price
from Products
where prod_name <> 'Lion toy'-- ********** End ********** --GO

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

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

相关文章

汉明校验·简明教程

汉明校验 一、简介 汉明码是由 Richard Hanming 于 1950 年提出的&#xff0c;它具有一位纠错能力。 新增的汉明码校验位数应满足如下关系&#xff1a; 2 k ⩾ n k 1 2^{k}\geqslant nk1 2k⩾nk1&#xff0c;其中k为校验位位数&#xff0c;n位数据位数。 二、汉明码生成 确…

Python学习从0到1 day18 Python可视化基础综合案例 3.动态柱状图

夜色难免黑凉&#xff0c;前行必有曙光。 —— 24.3.25 目录&#xff1a; 01.基础柱状图 02.基础时间线柱状图 03.GDP动态柱状图绘制 一、基础柱状图构建 掌握构建一个基础的柱状图并能够反转x和y轴 1.通过Bar功能构建基础柱状图 基础柱状图的开发 # 导包 Bar包&#xff0c;生…

吴恩达2022机器学习专项课程(一) 第一周课程实验:成本函数(Lab_04)

问题预览 1.实验目的是什么&#xff1f; 2.一元线性回归的一元是什么意思&#xff1f; 3.如何实现一元线性回归的成本函数&#xff1f; 4.b确定&#xff0c;w和成本函数走势的关系是&#xff1f; 5.w&#xff0c;b和等高线图的关系是&#xff1f; 6.什么情况下&#xff0c;可以…

javaWeb个人日记(博客)管理系统

一、简介 在快节奏的生活中&#xff0c;记录生活点滴、感悟和思考是一种重要的方式。基于此&#xff0c;我设计了一个基于JavaWeb的个人日记本系统&#xff0c;旨在帮助用户轻松记录并管理自己的日记。该系统包括登录、首页、日记列表、写日记、日记分类管理和个人中心等功能&…

动态多态的注意事项

大家好&#xff1a; 衷心希望各位点赞。 您的问题请留在评论区&#xff0c;我会及时回答。 多态的基本概念 多态是C面向对象三大特性之一&#xff08;多态、继承、封装&#xff09; 多态分为两类&#xff1a; 静态多态&#xff1a;函数重载和运算符重载属于静态多态&#x…

深入了解 Linux 中的 MTD 设备:/dev/mtd* 与 /dev/mtdblock*

目录 前言一、什么是MTD子系统&#xff1f;二、 /dev/mtd* 设备文件用途注意事项 三、/dev/mtdblock* 设备文件用途注意事项 三、这两种设备文件的关系四、关norflash的一些小知识 前言 在嵌入式Linux系统的世界里&#xff0c;非易失性存储技术扮演着至关重要的角色。MTD&#…

Spring Aop 源码解析(下)

ProxyFactory选择cglib或jdk动态代理原理 ProxyFactory在生成代理对象之前需要决定到底是使用JDK动态代理还是CGLIB技术: config就是ProxyFactory对象,把自己传进来了,因为ProxyFactory继承了很多类,其中一个父类就是ProxyConfig // config就是ProxyFactory对象// 是不是…

第十二届蓝桥杯物联网试题(省赛)

思路&#xff1a; 这个考了一个RTC的配置&#xff0c;RTC我只配过一次&#xff0c;所以有些生疏&#xff0c;还是不能大意&#xff0c;一些偏僻的考点还是要多练&#xff0c;在获取RTC时间的时候也遇到一些bug,这个后续会用一篇博客将最近遇到的BUG都总结一下 主要的难点还是…

基于GA优化的CNN-LSTM-Attention的时间序列回归预测matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1卷积神经网络&#xff08;CNN&#xff09;在时间序列中的应用 4.2 长短时记忆网络&#xff08;LSTM&#xff09;处理序列依赖关系 4.3 注意力机制&#xff08;Attention&#xff09; 5…

Android15功能和 API 概览

Android 15 面向开发者引入了一些出色的新功能和 API。以下部分总结了这些功能&#xff0c;以帮助您开始使用相关 API。 如需查看新增、修改和移除的 API 的详细列表&#xff0c;请参阅 API 差异报告。如需详细了解新的 API&#xff0c;请访问 Android API 参考文档&#xff0…

C++零基础入门学习视频课程

教程介绍 本专题主要讲解C基础入门学习&#xff0c;所以不会涉及很深入的语法和机制。但会让你整体多面的了解和学习C的核心内容&#xff0c;快速学习使用C&#xff0c;我们的目标是先宏观整体把握&#xff0c;在深入各个击破&#xff01; 学习地址 链接&#xff1a;https:/…

多线程合并练习题,线程安全(售票任务引入)--学习JavaEE的day30

day30 练习&#xff08;day29&#xff09; 注意代码注释&#xff0c;里面涉及代码实现遇到问题及解决方案&#xff0c;由于理解方便没有单独出来 1.计算任务 1.计算任务&#xff0c;一个包含了2万个整数的数组&#xff0c;分拆了多个线程来进行并行计算&#xff0c;最后汇总出…

MySQL三种开窗函数详细用法,图文详解

开窗函数的详细用法 第一章、开窗函数的语法1.1&#xff09;从聚合开窗函数讲起1.2&#xff09;开窗函数之取值1.3&#xff09;排名开窗函数 第一章、开窗函数的语法 开窗函数的语法为&#xff1a;over(partition by 列名1 order by 列名2 )&#xff0c;括号中的两个关键词par…

加速新能源汽车产品迭代:融合前沿科技的重要性

新能源汽车新质生产力提升咨询方案 一、新能源汽车企业行业目前发展现状及特点&#xff1a; 1、快速增长 2、技术迭代快 3、竞争加剧 二、新能源汽车企业发展新质生产力面临的痛点&#xff1a; 1、技术创新压力巨大 2、市场竞争激烈 3、供应链稳定性欠缺 4、成本控制压…

微信小程序实战:无痛集成腾讯地图服务

在移动互联网时代,地图服务无疑是应用程序中最常见也最实用的功能之一。无论是导航定位、附近搜索还是路线规划,地图服务都能为用户提供极大的便利。在微信小程序开发中,我们可以轻松集成腾讯地图服务,为小程序赋能增值体验。本文将详细介绍如何在微信小程序中集成使用腾讯地图…

jmeter中参数加密

加密接口常用的方式有&#xff1a; MD5&#xff0c;SHA&#xff0c;HmacSHA RSA AES&#xff0c;DES&#xff0c;Base64 压测中有些参数需要进行加密&#xff0c;加密方式已接口文档为主。 MD5加密 比如MD5加密的接口文档&#xff1a; 请求URL&#xff1a;http://101.34.221…

面试算法-105-相交链表

题目 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 。 图示两个链表在节点 c1 开始相交&#xff1a; 题目数据 保证 整个链式结构中不存在环。 注意&#xff0c;函数返回…

各大pdf转word软件都用的哪家的ocr引擎?

国内一般的PDF软件一般都调用某国际PDF原厂的OCR接口&#xff0c;但这家公司是主要做PDF&#xff0c;在OCR方面并不专注&#xff0c;一些不是很复杂的场景还能应付得过来&#xff0c;复杂一点的效果就强差人意了&#xff0c;推荐用金鸣表格文字识别系统&#xff0c;它主要有以下…

抖音视频关键词无水印下载软件|手机网页视频批量提取工具

全新视频关键词无水印下载软件&#xff0c;助您快速获取所需视频&#xff01; 随着时代的发展&#xff0c;视频内容已成为人们获取信息和娱乐的重要途径。为了方便用户获取所需视频&#xff0c;推出了一款功能强大的视频关键词无水印下载软件。该软件主要功能包括关键词批量提取…

yolov8直接调用zed相机实现三维测距(python)

yolov8直接调用zed相机实现三维测距&#xff08;python&#xff09; 1. 相关配置2. 相关代码3. 实验结果 相关链接 此项目直接调用zed相机实现三维测距&#xff0c;无需标定&#xff0c;相关内容如下&#xff1a; 1.yolov5直接调用zed相机实现三维测距&#xff08;python&#…