MySQL单表查询操作(SELECT语句)

news2024/11/13 15:08:58

目录

步骤

1、创建表单

 2、添加数据

 3、显示所有职工的基本信息

4、查询所有职工所属部门的部门号,不显示重复的部门号

5、 求出所有职工的人数

6、 列出最高工资和最低工资

7、 列出职工的平均工资和总工资

8、 创建一个只有职工号、姓名和参加工作的新表,名为工作日期表

 9、显示所有女职工的年龄

 10、列出所有姓刘的职工的职工号、姓名和出生日期

11、列出1960年以前出生的职工的姓名、参加工作日期

 12、列出工资在1000-2000之间的所有职工姓名

13、 列出所有陈姓和李姓的职工姓名

14、 列出所有部门号为2和3的职工号、姓名、党员否

 15、将职工表worker中的职工按出生的先后顺序排序

16、 显示工资最高的前3名职工的职工号和姓名

17、 求出各部门党员的人数

18、 统计各部门的工资和平均工资

19、列出总人数大于4的部门号和总人数


步骤

1、创建表单

命令:

create table worker(    

wo_dep_no int(11) not null comment'部门号',    

wo_no int(11) not null comment'职工号',    

wo_time date not null comment'工作时间',    

wo_salary float(8,2) not null comment'工资',    

wo_po varchar(10) not null default'群众' comment'政治面貌',    

wo_name varchar(20) not null comment'姓名',    

wo_age tinyint not null comment'年龄',  

wo_gender char(1) not null default'M' comment'性别', 

wo_bd date not null comment'出生日期',    

primary key(wo_no)    

)engine=InnoDB default charset=utf8 row_format=dynamic;

 2、添加数据

命令:

 insert into worker values (101,1001,'2015-5-4',3500.00,'群众','张三',33,'M','1990-7-1'),

                                        (101,1002,'2017-2-6',3200.00,'团员','李四',26,'M','1997-2-8'),

                                        (101,1003,'2014-5-4',4500.00,'党员','王五',43,'M','1980-7-9'),

                                        (101,1004,'2013-5-4',1500.00,'群众','陈濯',73,'M','1950-6-9'),

                                        (101,1005,'2003-5-4',4500.00,'团员','邵顺',68,'M','1955-4-10'),

                                        (102,1006,'2020-7-5',1900.00,'群众','李倝',28,'M','1995-8-10'),

                                        (102,1007,'2010-8-5',1800.00,'群众','刘妶',25,'F','1998-9-1'),

                                        (102,1008,'2018-8-25',4580.00,'党员','陈淑',22,'F','2001-5-1'),

                                        (102,1009,'2014-8-25',3200.00,'团员','丁珍',29,'F','1994-10-1'),

                                        (103,1010,'2004-8-15',4200.00,'团员','胡竹',31,'F','1992-6-1'),

                                        (103,1011,'2015-9-16',4500.00,'党员','刘允',41,'F','1982-6-5'),

                                        (103,1012,'1990-4-26',5900.00,'党员','刘影',71,'M','1952-6-5');

 3、显示所有职工的基本信息

命令:select *from worker;

4、查询所有职工所属部门的部门号,不显示重复的部门号

命令:select distinct wo_dep_no from worker;

 

distinct: 

使用distinct关键字可从查询结果中清除重复行

作用范围是后面所有字段的组合

5、 求出所有职工的人数

命令: select count(*) from worker;

使用count这个聚合函数完成表中数量的统计

*:代表所有 ,任意字符

count(*)表示返回表中的记录数(包括所有列),相当于统计表的行数(不会忽略列值为NULL的记录)

6、 列出最高工资和最低工资

命令:select max(wo_salary),min(wo_salary) from worker;

7、 列出职工的平均工资和总工资

命令:select avg(wo_salary),sum(wo_salary) from worker;

8、 创建一个只有职工号、姓名和参加工作的新表,名为工作日期表

命令:create table work_date select wo_no,wo_name,wo_time from worker;

           select *from work_date;

 9、显示所有女职工的年龄

命令: select wo_name,wo_age from worker where wo_gender='F';

 10、列出所有姓刘的职工的职工号、姓名和出生日期

命令:select wo_no,wo_name,wo_bd from worker where wo_name like '%刘%';

补充:

       以李字开头的 :'李%'

  以李字结尾的:'%李'

  包含李字的:'%李%'

  第二个字是李的:'_李%'

11、列出1960年以前出生的职工的姓名、参加工作日期

命令: select wo_name,wo_time from worker where wo_bd<19600000;

 12、列出工资在1000-2000之间的所有职工姓名

命令:select wo_name,wo_salary from worker where wo_salary between 1000 and 2000;

13、 列出所有陈姓和李姓的职工姓名

命令:

方法一:select wo_name from worker where wo_name like '陈%' or wo_name like '李%';

方法二:select wo_name from worker where wo_name regexp '^[陈|李]';(正则表达式)

  

 ^ :匹配开始

 [abc]:匹配单个字符,匹配a或者b或者c,集合

^[陈|李]:匹配以陈或李开头的姓名

14、 列出所有部门号为2和3的职工号、姓名、党员否

命令:

select wo_dep_no,wo_no,wo_name,wo_po='党员' from worker where wo_dep_no in (102,103);

wo_po='党员' 结果为0或1

        0表示非党员,1表示为党员

in:成员运算符

 15、将职工表worker中的职工按出生的先后顺序排序

命令:select wo_name,wo_bd from worker order by wo_bd;

order by: 排序 ,默认为升序

16、 显示工资最高的前3名职工的职工号和姓名

命令: select wo_no,wo_name,wo_salary from worker order by wo_salary desc limit 3;

desc(descend)

order by wo_salary desc:按薪资降序排列

limit:限制;来限定查询结果返回的起始记录和总数量。

        用法:SELECT … LIMIT offset_start,row_count;

        offset_start:第一个返回记录行的偏移量。默认为0.
        row_count:要返回记录行的最大数目。

 

select wo_no,wo_name,wo_salary from worker order by wo_salary desc limit 3;检索前三个记录

17、 求出各部门党员的人数

命令:select wo_dep_no,count(wo_po) from worker where wo_po='党员' group by wo_dep_no;

 group by:分组

18、 统计各部门的工资和平均工资

命令: select wo_dep_no,sum(wo_salary),avg(wo_salary) from worker group by wo_dep_no;

19、列出总人数大于4的部门号和总人数

命令:select wo_dep_no,count(*) from worker group by wo_dep_no;

          select wo_dep_no,count(*) from worker group by wo_dep_no having count(wo_dep_no)>4;

 

数据分组--限定组的结果:HAVING子句

HAVING子句用来对分组后的结果再进行条件过滤。

HAVING子句可以使用聚合函数。

 

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

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

相关文章

Kafka3.0.0版本——Broker(服役新节点)示例

目录 一、服务器信息二、VMware克隆服务节点&#xff08;将虚拟机1克隆成虚拟机4 &#xff09;三、克隆后的&#xff08;192.168.136.30&#xff09;服务节点配置文件修改3.1、修改zookeeper服务配置文件3.2、修改kafka服务配置文件3.3、先启动zookeeper&#xff0c;再启动kafk…

Cesium中通过射线计算日照

Cesium中通过射线计算日照 前段时间接触到一个需求&#xff0c;需要实时的计算建筑的日照&#xff0c;通常优先通过shadow map来实现。通过shadow map可以直接获取某一时刻的光照信息&#xff0c;累积不同太阳光位置的shadow map即可得到物体表面的光照时长。 不过本人技术有限…

Pycharm如何打断点进行调试?

断点调试&#xff0c;是编写程序中一个很重要的步骤&#xff0c;有些简单的程序使用print语句就可看出问题&#xff0c;而比较复杂的程序&#xff0c;函数和变量较多的情况下&#xff0c;这时候就需要打断点了&#xff0c;更容易定位问题。 一、添加断点 在代码的行标前面&…

C++/Qt 读写文件

之前写过两篇跟文件操作相关的博客&#xff0c;有兴趣也可以看一下&#xff1a; C语言读写文件 Qt关于文件路径的处理 先讲一些关于基础文本文件和二进制文件的读写操作&#xff0c;后续将会整理C/Qt关于ini、xml、json、xlsx相关文件的读写操作。 C 相比于C语言使用FILE文…

centos7安装phpipam1.4

by:铁乐与猫 date&#xff1a;2021-5-11 安装依赖 sudo yum install epel-release sudo yum install php-mcrypt安装 Apache, MySQL, PHP (LAMP) stack packages sudo yum install httpd mariadb-server php php-cli php-gd php-common php-ldap php-pdo php-pear php-snmp …

c++11 标准模板(STL)(std::basic_fstream)(三)

定义于头文件 <fstream> template< class CharT, class Traits std::char_traits<CharT> > class basic_fstream : public std::basic_iostream<CharT, Traits> 类模板 basic_fstream 实现基于文件的流上的高层输入/输出。它将 std::basic_i…

JPA实现存储实体类型信息

本文已收录于专栏 《Java》 目录 背景介绍概念说明DiscriminatorValue 注解&#xff1a;DiscriminatorColumn 注解&#xff1a;Inheritance(strategy InheritanceType.SINGLE_TABLE) 注解&#xff1a; 实现方式父类子类执行效果 总结提升 背景介绍 在我们项目开发的过程中经常…

Node RESTful API说明

1、什么是 REST REST即表述性状态传递&#xff1b; 表述性状态转移是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。需要注意的是&#xff0c;REST是设计风格而不是标准。 2、HTTP 方法 以下为 REST 基本架构的四个方法&#xff1a; GET - …

机器视觉项目流程和学习方法

机器视觉项目流程&#xff1a; 00001. 需求分析和方案建立 00002. 算法流程规划和业务逻辑设计 00003. 模块化编程和集成化实现 00004. 调试和优化&#xff0c;交付客户及文档 学习机器视觉的方法&#xff1a; 00001. 实战学习&#xff0c;结合项目经验教训 00002. 学习…

【Leetcode】基础题||合并有序表(击败100%)

step by step. 题目&#xff1a;&#xff08;超级基础的题&#xff09; 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4]示例…

mysql统计近7天数据量,,按时间戳分组

可以使用以下 SQL 语句来统计近7天的数据量&#xff0c;并按时间戳分组。如果某一天没有数据&#xff0c;则将其填充为0。 SELECT DATE_FORMAT(FROM_UNIXTIME(timestamp), %Y-%m-%d) AS date,COUNT(*) AS count FROM table_name WHERE timestamp > UNIX_TIMESTAMP(DATE_SUB…

C++ 引用详解

1.引用的基本语法 &#xff08;1&#xff09;语法形式&#xff1a; 数据类型 &别名 原名 &#xff08;2&#xff09;原理 给一个已有的变量起别名 int main() {int a 10;int& b a;cout << "a" << a << " b" << b &l…

Vector - CAPL - 诊断模块函数(流控制帧)

目录 CanTpIsUseFlowControlBlockSize & CanTpUseFlowControlBlockSize 代码示例 CanTpGetOneFlowControlValue & CanTpSetOneFlowControlValue 代码示例 CanTpGetAckMode & CanTpSetAckMode & CanTpGetAckResult & CanTpSetAckResult 代码示例 CanT…

MySQL5.7数据库、Navicat Premium1.6可视化工具安装教程【详细教程】

文章目录 一、MySQL、Navicat、注册机地址二、安装&#xff08;一&#xff09;、MySQL安装&#xff08;二&#xff09;、Navicat Premium安装&#xff08;三&#xff09;、集活Navicat Premium 三、遇到的问题1、Are you sure your navicat has not beenpatched/modified befor…

android开发之Android 自定义滑动解锁View

自定义滑动解锁View 需求如下&#xff1a; 近期需要做一个类似屏幕滑动解锁的功能&#xff0c;右划开始&#xff0c;左划暂停。 需求效果图如下 实现效果展示 自定义view如下 /** Desc 自定义滑动解锁View Author ZY Mail sunnyfor98gmail.com Date 2021/5/17 11:52 *…

测评HTTP代理的透明匿名?

在我们日常的网络冒险中&#xff0c;你是否曾听说过HTTP代理的透明匿名特性&#xff1f;这些神秘的工具就像是网络世界中的隐身斗士&#xff0c;让我们能够在互联网的迷雾中保护自己的身份和隐私。那么&#xff0c;让我们一起揭开HTTP代理的面纱&#xff0c;探索其中的奥秘吧&a…

opencv安装报错解决方案

菜鸟程序员写代码5分钟&#xff0c;配环境5小时 这里记录一下opencv配置报错&#xff0c;其实之前碰到过很多遍了 情况1&#xff1a;安装的时候卡在这一块 Building wheel for opencv-python (pyproject.toml) 解决方案&#xff1a;在安装指令后加--verbose pip install o…

并发三大特性和JMM

一、并发三大特性 1、原子性 一个或多个操作&#xff0c;要么全部执行且在执行过程中不被任何因素打断&#xff0c;要么全部不执行。在Java中&#xff0c;对基本数据类型的读取和赋值操作是原子性操作&#xff08;64位处理器&#xff09;。不采取任何的原子性保障措施的自增操…

微信小程序 map地图(轨迹)

allMarkers效果图 废话少说直接上马&#xff08;最后是我遇到的问题&#xff09; cover-view是气泡弹窗&#xff0c;可以自定义弹窗&#xff0c;要配合js&#xff1a;customCallout&#xff0c;如果是非自定义的话&#xff1a;callout&#xff08;可以修改颜色、边框宽度、圆角…

《Zookeeper》源码分析(五)之 ServerCnxnFactory的工作原理(上)

目录 AcceptThread数据结构构造函数run() SelectorThread数据结构processAcceptedConnections()select()processInterestOpsUpdateRequests() 本文开始分析 ServerCnxnFactory的工作原理&#xff0c;按照顺序我们这样分析&#xff1a; 建立连接监听读写事件处理读写就绪的事件…