select简单查询

SELECT 简单查询

假如我们有一张表,表名为 students,如下所示:

+----+--------+------+---------------+
| id | name   | age  | department_id |
+----+--------+------+---------------+
|  1 | 张三   |   20 |           101 |
|  2 | Alice  |   21 |           102 |
|  3 | 李四   |   22 |           103 |
|  4 | Bob    |   19 |           101 |
|  5 | 张三   |   20 |           102 |
|  6 | Frank  |   21 |           103 |
|  7 | Grace  |   22 |           101 |
|  8 | Hannah |   20 |           102 |
|  9 | Isaac  |   21 |           103 |
| 10 | 张三   |   22 |           101 |
+----+--------+------+---------------+

查询指定列

以下是 SELECT 命令的基本语法:

SELECT 列名1, 列名2
FROM 表名;

接下来我们试着查询一下表中的 name 和 age:

select name,age from students;+--------+------+
| name   | age  |
+--------+------+
| 张三   |   20 |
| Alice  |   21 |
| 李四   |   22 |
| Bob    |   19 |
| 张三   |   20 |
| Frank  |   21 |
| Grace  |   22 |
| Hannah |   20 |
| Isaac  |   21 |
| 张三   |   22 |
+--------+------+
10 rows in set (0.00 sec)

看起来十分的臃肿?有重复值!!!别急,接下来介绍一下如何去重。

这里有细心的同学发现查询的时候字母都是小写。没错,就是你想的那样,关键字不区分大小写 select 和 SELECT 是一样的。

DISTINCT 去重

以下是 DISTINCT 命令的基本语法:

SELECT DISTINCT 列名1, 列名2
FROM 表名;

来,展示一下:

select distinct name from students;+--------+
| name   |
+--------+
| 张三   |
| Alice  |
| 李四   |
| Bob    |
| Frank  |
| Grace  |
| Hannah |
| Isaac  |
+--------+
8 rows in set (0.00 sec)

是不是比刚刚舒服多了。还有些同学会想我想查看整个表,这样一个一个写列名太麻烦了,有没有简单的方法?有!当然有!

查找所有列

星号( * )代表所有的意思:

select distinct * from students;+----+--------+------+---------------+
| id | name   | age  | department_id |
+----+--------+------+---------------+
|  1 | 张三   |   20 |           101 |
|  2 | Alice  |   21 |           102 |
|  3 | 李四   |   22 |           103 |
|  4 | Bob    |   19 |           101 |
|  5 | 张三   |   20 |           102 |
|  6 | Frank  |   21 |           103 |
|  7 | Grace  |   22 |           101 |
|  8 | Hannah |   20 |           102 |
|  9 | Isaac  |   21 |           103 |
| 10 | 张三   |   22 |           101 |
+----+--------+------+---------------+
10 rows in set (0.00 sec)

这样就很容易查看整个表

为列设置别名

什么?老板让我把这些列名的查新结果变成中文?

别急,我们可以用as为列设置别名。我们以 name 和 age 为例。

select distinct 
name as "姓名" ,
age "年龄"  
from students;
+--------+------+
| 姓名   | 年龄 |
+--------+------+
| 张三   |   20 |
| Alice  |   21 |
| 李四   |   22 |
| Bob    |   19 |
| Frank  |   21 |
| Grace  |   22 |
| Hannah |   20 |
| Isaac  |   21 |
| 张三   |   22 |
+--------+------+
9 rows in set (0.00 sec)

细心的同学可能发现 name 后面有 as 而 age 后面却没有。

这是没关系的,两种方式都对。

条件查询

顾名思义,就是按照某个特定的条件进行查询。只有符合条件的才能被输出。

以下是 WHERE 命令的基本语法:

SELECT DISTINCT 列名1, 列名2
FROM 表名
WHERE 条件表达式;

假如我们查询年龄在 20 岁以上的同学所有信息:

select distinct * from students where age > 20;+----+-------+------+---------------+
| id | name  | age  | department_id |
+----+-------+------+---------------+
|  2 | Alice |   21 |           102 |
|  3 | 李四  |   22 |           103 |
|  6 | Frank |   21 |           103 |
|  7 | Grace |   22 |           101 |
|  9 | Isaac |   21 |           103 |
| 10 | 张三  |   22 |           101 |
+----+-------+------+---------------+

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

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

相关文章

IT入门知识博客文章大纲(0/10)

IT入门知识博客文章大纲 引言 什么是IT? 信息技术(Information Technology),互联网技术是指在计算机技术的基础上开发建立的一种信息技术 。互联网技术通过计算机网络的广域网使不同的设备相互连接,加快信息的传输速度…

如何在 Go 应用程序中使用检索增强生成(RAG)

本文将帮助大家实现 RAG (使用 LangChain 和 PostgreSQL )以提高 LLM 输出的准确性和相关性。 得益于强大的机器学习模型(特别是由托管平台/服务通过 API 调用公开的大型语言模型,如 Claude 的 LLama 2等)&#xff0c…

「动态规划」买卖股票的最佳时机,如何处理多笔交易?

188. 买卖股票的最佳时机 IVhttps://leetcode.cn/problems/best-time-to-buy-and-sell-stock-iv/description/ 给你一个整数数组prices和一个整数k,其中prices[i]是某支给定的股票在第i天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成k笔交易。…

关于钽电容器的作用、优缺点、选型指南及故障诊断方法等介绍

钽电容器,全称为钽电解电容器,是一种以金属钽作为介质材料的电解电容器。与传统的电解电容器不同,钽电容器不使用液体电解质,而是利用钽氧化物(五氧化二钽)作为固态电解质,这使得它们具有更高的…

取证工作: SysTools SQL Log Analyzer, 完整的 SQL Server 日志取证分析

天津鸿萌科贸发展有限公司是 Systools 系列软件的授权代理商。 SysTools SQL Log Analyzer 是 Systools 取证工具系列之一,用于调查 SQL Server 事务日志,以对数据库篡改进行取证分析。 什么是 SQL Server 事务日志? 在深入研究 SQL 事务日…

Python 测试用例

在Python中编写测试用例通常使用unittest模块,这是Python标准库的一部分,专门用于编写和运行测试。下面是一个简单的测试用例的例子,展示了如何使用unittest模块来测试一个函数。 假设我们有一个简单的函数,用于计算两个数的和&a…

Java HttpUtil 异步不等待调用

步骤一&#xff1a;添加依赖 <dependencies><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.6.3</version></dependency> </dependencies>步骤二&#xff1a;创建异步…

在Qt中,QSerialPort::write(data) 和 readAll() 有什么关联和联系

在Qt中&#xff0c;QSerialPort::write(data) 和 readAll() 是与串行通信相关的两个不同的函数&#xff0c;它们属于 QSerialPort 类。这两个函数在串行通信中扮演不同的角色&#xff0c;但它们之间存在一定的联系&#xff1a; QSerialPort::write(data) 这个函数用于将数据发…

失眠焦虑?这些小妙招助你重拾宁静之夜

在这个快节奏的时代&#xff0c;失眠与焦虑似乎成了不少人的“常客”。每当夜幕降临&#xff0c;躺在床上却辗转反侧&#xff0c;思绪万千&#xff0c;仿佛整个世界的喧嚣都涌入了脑海。&#x1f4ad; 其实&#xff0c;放松心情&#xff0c;调整心态&#xff0c;是缓解失眠焦虑…

Java | Leetcode Java题解之第151题反转字符串中的单词

题目&#xff1a; 题解&#xff1a; class Solution {public String reverseWords(String s) {StringBuilder sb trimSpaces(s);// 翻转字符串reverse(sb, 0, sb.length() - 1);// 翻转每个单词reverseEachWord(sb);return sb.toString();}public StringBuilder trimSpaces(S…

flask基础知识1

目录 1.介绍 2.体验一下 3.配置参数&#xff1a; 4.路由和URL 1.路由 2.动态路由&#xff1a; 自定义转换器&#xff1a; 3.使用自定义转换器 5.url_for函数 6.request参数 7.处理响应&#xff1a; 1.重定向&#xff1a; 2.返回json数据&#xff1a; 3.返回模板&…

el-table 多选回显,分页回显

实现el-table多选分页回显功能&#xff0c;左侧是分页的数据源&#xff0c;右侧是选择后的人员数据&#xff0c;切换下一页&#xff0c;选中的数据会在左侧表格回显。 实现&#xff1a; <template><el-dialog :title"title" :visible.sync"show"…

java:spring使用【@ImportResource】导入一个xml里面定义的bean

# 项目代码资源&#xff1a; 可能还在审核中&#xff0c;请等待。。。 https://download.csdn.net/download/chenhz2284/89434148 # 项目代码 【pom.xml】 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-start…

长亭培训加复习安全产品类别

下面这个很重要参加hw时要问你用的安全产品就有这个 检测类型产品 偏审计 安全防御类型 EDR类似于杀毒软件 安全评估 任何东西都要经过这个机械勘察才能上线 安全管理平台 比较杂 比较集成 审计 漏扫 评估 合在这一个平台 也有可能只是管理 主机理解为一个电脑 安了终端插件…

Vue39-组件的嵌套

一、嵌套的定义 二、嵌套示例 school组件中&#xff0c;嵌套student组件 局部注册&#xff0c;注册给谁&#xff0c;就在谁的结构里面写&#xff01; vue拿不到<student>组件标签&#xff01;&#xff01;&#xff01; 三、一人之下万人之上的app组件 或者容器里面不用…

6.14作业

使用手动连接&#xff0c;将登录框中的取消按钮使用第二中连接方式&#xff0c;右击转到槽&#xff0c;在该槽函数中&#xff0c;调用关闭函数 将登录按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff0…

探索Napier:Kotlin Multiplatform的日志记录库

探索Napier&#xff1a;Kotlin Multiplatform的日志记录库 在现代软件开发中&#xff0c;日志记录是不可或缺的部分&#xff0c;它帮助开发者追踪应用的行为和调试问题。对于Kotlin Multiplatform项目而言&#xff0c;能够在多个平台上统一日志记录的方法显得尤为重要。Napier…

浏览器无痕模式和非无痕模式的区别

无痕模式 1. 历史记录&#xff1a;在无痕模式下&#xff0c;浏览器不会保存浏览记录、下载记录、表单数据和Cookies。当你关闭无痕窗口后&#xff0c;这些信息都会被删除。
 2. Cookies&#xff1a;无痕模式会在会话期间临时存储Cookies&#xff0c;但在关闭无痕窗口…

数据结构 ->反转链表

工作原理 初始化&#xff1a; cur 指向传入的节点 node&#xff0c;即链表的头节点。prv 初始化为 NULL&#xff0c;用于存储当前节点的前一个节点。 循环反转&#xff1a; 在 while 循环中&#xff0c;当 cur 不为空时执行循环体。保存当前节点的下一个节点&#xff1a;使用 t…

WordPress实时搜索插件Ajax Search Lite,轻松替代默认搜索功能

WordPress自带的默认搜索功能是跳转到搜索结果页&#xff0c;如果你想要实时搜索功能&#xff0c;特别是在问答中心显示搜索功能&#xff0c;那么建议使用这个WordPress实时搜索插件Ajax Search Lite&#xff0c;它可以在文章、页面、自定义类型文章中搜索标题、内容、摘要、自…