数据库-select查询语句

表复制:key不会被复制: 主键、外键和索引
复制表
1.复制表结构+记录 (key不会复制: 主键、外键和索引)
语法:create table 新表 select * from 旧表;
mysql>use company;
mysql> create table new_t1 select * from employee5;
mysql> show tables;
就会出现和employee5一样的表(相当于复制功能)
mysql>select * from new_t1;

2.复制单个字段和记录:
mysql> create table new_t2(select id,name from employee5);

3.多条件查询: and ----和(多个条件同时满足)
select count(name) from employee5 where post=‘hr’ and sex=‘male’;

会查看的更细致一点
mysql> select * from employee5 where post=‘hr’ and sex=‘male’;

语法: select 字段,字段2 from 表名 where 条件 and where 条件;
mysql> SELECT name,salary from employee5 where post=‘hr’ AND salary>1000;
mysql> SELECT name,salary from employee5 where post=‘instructor’ AND salary>1000;

4.多条件查询: or ----或者(任意一个满足都ok)
语法: select 字段,字段2 from 表名 where 条件 or 条件;
select count(name) from employee5 where post=‘hr’ or sex=‘male’;

mysql> select name from employee5 where salary>5000 and salary<10000 or dep_id=102;
mysql> select name from employee5 where salary>2000 and salary<6000 or dep_id=100;

5.关键字 BETWEEN AND 什么和什么之间(类似于 >= <=)
mysql> SELECT name,salary FROM employee5 WHERE salary BETWEEN 5000 AND 15000;
mysql> SELECT name,salary FROM employee5 WHERE salary NOT BETWEEN 5000 AND 15000;
mysql> select name,dep_id,salary from employee5 where not salary>5000;
注:not 给条件取反

6.关键字IS NULL 空的
mysql> SELECT name,job_description FROM employee5 WHERE job_description IS NULL;

执行这条命令有空格 空格也是有值的
mysql> SELECT name,job_description FROM employee5 WHERE job_description IS NOT NULL; #-取反 不是null

mysql> SELECT name,job_description FROM employee5 WHERE job_description=‘’; #什么都没有==空
NULL说明:
1、等价于没有任何值、是未知数。
2、NULL与0、空字符串、空格都不同,NULL没有分配存储空间。
3、对空值做加、减、乘、除等运算操作,结果仍为空。
4、比较时使用关键字用“is null”和“is not null”。
5、排序时比其他数据都小(索引默认是降序排列,小→大),所以NULL值总是排在最前。

7.排序查询 order by :指令,在mysql是排序的意思。
根据数字进行排序
mysql> select name,salary from employee5 order by salary; #-默认从小到大排序。
mysql> select name,salary from employee5 order by salary desc; #降序,从大到小

根据name字母顺序进行排列 首字母一个个对比
mysql> select name,salary from employee5 order by name;

先执行post等于hr 然后在进行排序
mysql> select name,salary from employee5 where post=‘hr’ order by salary;

8.limit 限制
mysql> select * from employee5 limit 5; #只显示前5行

高的在前 低的在后
mysql> select name,salary from employee5 order by salary desc;

只显示前5行
mysql> select name,salary from employee5 order by salary desc limit 5;

不做筛选 只看前5行
mysql> select name,salary from employee5 limit 5;

mysql> select name,salary from employee5 order by salary desc limit 0,1; #从第几行开始,打印一行

查找什么内容从那张表里面降序排序只打印第二行。
注意:
0-------默认第一行
1------第二行 依次类推…

打印总行
mysql> select name,salary from employee5;

从第一行后面开始 打印2行
mysql> select name,salary from employee5 limit 1,2;

mysql> SELECT * FROM employee5 ORDER BY salary DESC LIMIT 0,5; #降序,打印5行
mysql> SELECT * FROM employee5 ORDER BY salary DESC LIMIT 4,5; #从第5条开始,共显示5条
mysql> SELECT * FROM employee5 ORDER BY salary LIMIT 4,3; #默认从第5条开始显示3条。

9.分组查询(分类汇总求和) :group by

展现所有数据
mysql> select * from employee5;

分类求和(先分类在求和)
mysql> select post,sum(salary) from employee5 group by post;

分类总计(先分类在计数)
mysql> select count(name),post from employee5 group by post;
±------------±-----------+
| count(name) | post |
±------------±-----------+
| 2 | hr |
| 4 | instructor |
| 4 | sale |
±------------±-----------+

统计一下大于5000的都有谁(竖的排序)
mysql> select name from employee5 where salary>5000;

统计一下大于5000的都有谁(横的排序)
count可以计算字段里面有多少条记录,如果分组会分组做计算
mysql> select count(name),group_concat(name) from employee5 where salary>5000;
查找 统计(条件:工资大于5000)的有几个人(count(name)),分别是谁(group_concat(name))
±------------±---------------------------+
| count(name) | group_concat(name) |
±------------±---------------------------+
| 5 | tom,robin,alice,harry,emma |
±------------±---------------------------+

分组明细列表
11.GROUP BY和GROUP_CONCAT()函数一起使用
GROUP_CONCAT()-------组连接
mysql> SELECT dep_id,GROUP_CONCAT(name) FROM employee5 GROUP BY dep_id; #以dep_id分的组,dep_id这个组里面都有谁

根据dep_id进行分组,GROUP_CONCAT(name)打印出明细列表
mysql> SELECT dep_id,GROUP_CONCAT(name) as emp_members FROM employee5 GROUP BY dep_id; #给组连接设置了一个别名

对数字进行计算
count是计数 数字字符都可以
12.函数
max() 最大值

想统计出工资最高的一个人
mysql> select * from employee5 order by salary desc limit 1;
mysql> select name from employee5 order by salary desc limit 1;

想统计出工资最高的
mysql> select max(salary) from employee5;
查询薪水最高的人的详细信息:
mysql> select name,sex,hire_date,post,salary,dep_id from employee5 where salary = (SELECT MAX(salary) from employee5);
min()最小值
mysql>select min(salary) from employee5;
avg()平均值
mysql>select avg(salary) from employee5;
sum() 计算和
mysql>select sum(salary) from employee5 where post=‘sale’;

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

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

相关文章

CCF- CSP 2018.12 - 1.2题 Java语言解题

2018.12-1 小明上学 import java.util.Scanner;public class text01_RedLight {public static void main(String[] args) {Scanner scanner new Scanner(System.in);int r scanner.nextInt();int y scanner.nextInt();int g scanner.nextInt();int n scanner.nextInt();in…

springboot 两个相同类型的Bean使用@Resouce加载

问题描述 有两个相同类型的Bean 使用Service等注解注入或者Bean注入启动以后报错&#xff1a; qualifying bean of type com.fasterxml.jackson.databind.ObjectMapper available: expected single matching bean but found 2提示有相同的类型两个。 解决 * 每个Bean Resour…

第15章-超声波避障功能 HC-SR04超声波测距模块详解STM32超声波测距

这个是全网最详细的STM32项目教学视频。 第一篇在这里: 视频在这里 STM32智能小车V3-STM32入门教程-openmv与STM32循迹小车-stm32f103c8t6-电赛 嵌入式学习 PID控制算法 编码器电机 跟随 15.1-超声波测距 完成超声波测距功能、测量数据显示在OLED屏幕上 硬件介绍 使用&#…

Creo装配体中只显示一部分零部件

从模型树中选中要显示的零部件&#xff0c;也可以结合Ctrl框选的方式选择对象。然后在模型树右击等会弹出选项&#xff0c;点选----即可

AD23中一些好用的功能

1.关闭在线DRC功能&#xff0c;可以避免布线时候一卡一卡的问题&#xff1a; 取消在线DRC的勾选&#xff1a; 2.AD的在线封装库&#xff0c;非常好用&#xff1a; 如何优雅地服用AD 21的在线元件库 – 吴川斌的博客 (mr-wu.cn) 3.如何恢复Altium Designer23默认窗口布局 打开…

了解MySQL中的存储过程,请看过来

引言 在数据库编程中&#xff0c;存储过程是一种强大的工具&#xff0c;它允许开发者封装复杂的逻辑&#xff0c;提高性能&#xff0c;并且增强安全性。本文将从基础概念讲起&#xff0c;逐步深入到存储过程的高级应用。 第一部分&#xff1a;存储过程基础 1. 存储过程简介 …

小红书推流机制底层逻辑

小红书推流机制底层逻辑 很多做运营的朋友问小红薯怎么玩❓ 小红书的核心逻辑流量是不是玄学❓ 今天就来说说小红书的流量算法机制&#x1f525; ①电脑审核 ②分配初始流量 ③增加流量 ④推荐结束

DINO中为什么教师模型用大图,学生模型用小图

在 DINO&#xff08;可以理解为由DIstillation和NO labels的缩写&#xff09;中&#xff0c;使用不同的图像裁剪策略对教师模型和学生模型进行训练有其特定的原因。具体来说&#xff0c;教师模型使用大图&#xff08;global views&#xff09;&#xff0c;学生模型则同时使用大…

鸿蒙OS开发:【一次开发,多端部署】(音乐专辑主页)

一多音乐专辑主页 介绍 本示例展示了音乐专辑主页。 头部返回栏: 因元素单一、位置固定在顶部&#xff0c;因此适合采用自适应拉伸&#xff0c;充分利用顶部区域。专辑封面: 使用栅格组件控制占比&#xff0c;在小尺寸屏幕下封面图与歌单描述在同一行。歌曲列表: 使用栅格组…

LVM和配额管理

文章目录 一、LVM1.1 LVM概述1.2 LVM的管理命令1.3 创建LVM的过程第一步&#xff1a;先创建物理卷第二步&#xff1a;创建逻辑卷组 / 扩容第三步&#xff1a;创建逻辑卷 / 扩容对ext4文件系统的管理 1.4 删除LVM 二、磁盘配额2.1 磁盘配额概述2.2 磁盘配额命令2.3 磁盘配额设置…

从ZooKeeper切换到ClickHouse-Keeper,藏着怎样的秘密

本文字数&#xff1a;7772&#xff1b;估计阅读时间&#xff1a;20 分钟 作者&#xff1a;博睿数据 李骅宸&#xff08;太道&#xff09;& 小叮当 本文在公众号【ClickHouseInc】首发 本系列前两篇内容&#xff1a; 从ES到ClickHouse&#xff0c;Bonree ONE平台更轻更快&a…

vue3学习(三)

前言 继续接上一篇笔记&#xff0c;继续学习的vue的组件化知识&#xff0c;可能需要分2个小节记录。前端大佬请忽略&#xff0c;也可以留下大家的鼓励&#xff0c;感恩&#xff01; 一、理解组件化 二、组件化知识 1、先上知识点&#xff1a; 2、示例代码 App.vue (主页面) …

认识 DECIMAL 类型

文章目录 1.作用2.实现原理参考文献 1.作用 为保证小数精度不丢失&#xff0c;数据库表使用 DECIMAL 类型&#xff0c;服务代码中使用&#xff0c;比如 Golang 第三方库 https://github.com/shopspring/decimal。接口协议可以使用 string 表示。 从 DB 存储&#xff0c;服务数…

力扣:541. 反转字符串 II

541. 反转字符串 II 给定一个字符串 s 和一个整数 k&#xff0c;从字符串开头算起&#xff0c;每计数至 2k 个字符&#xff0c;就反转这 2k 字符中的前 k 个字符。 如果剩余字符少于 k 个&#xff0c;则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个&#xff0…

数据恢复:手机数据恢复,盘点7个有效手机恢复方法

你知道吗&#xff0c;超过 70% 的智能手机用户都曾有过数据丢失的经历&#xff1f;如果你曾经丢失过手机中的重要文件&#xff0c;别担心&#xff0c;本文有解决办法。在本文中&#xff0c;我们将告诉你如何使用简单的步骤恢复手机中丢失的数据。无论你是不小心删除了文件还是手…

go使用letteravatar生成圆形透明头像图标

官网地址&#xff1a;GitHub - disintegration/letteravatar: Letter avatar generation for Go 我对其中函数改了一下&#xff0c;支持多个字符&#xff0c;效果如下&#xff1a; func TestCreateAvatar(t *testing.T) {GenerateAvatar("Bird Fish", 0, "Bird…

哈工大机器人竞技队成立22年来4次获国际冠军

另获得中国冠/亚/季军13次、国家级科技奖励60余次、省级科技竞赛奖励50余次、多次获得“最佳技术奖”。早在2009年就力克群雄获得唯一一张亚太大学生机器人大赛的入场卷&#xff0c;代表中国在东京5场全胜获得冠军。 2013届队员王永锟填报高考志愿时&#xff0c;恰巧看到哈工大…

Mac m1安装AWVS

目录 原因 安装 下载镜像 进入终端 启动AWVS 登陆 原因 由于 m1 为 arm 芯片,兼容性问题无法独立安装x86的AWVS,所以使用docker安装较为方便使用。

字符串补位

字符串补位 StringUtilsStrUtilString.format() StringUtils 字符串长度小于设定长度&#xff0c;则会补零&#xff0c;直至达到设定长度字符串长度等于或大于设定长度&#xff0c;则不进行任何操作&#xff0c;保持原字符串不变 import org.apache.commons.lang3.StringUtil…

JavaScript 全屏方案(分享)

文章目录 基本实现特殊情况 基本实现 基本情况是属于只是鼠标点击全屏按钮 document.exitFullscreen()&#xff0c;退出全屏Document.requestFullscreen()&#xff0c;开启全屏document.fullscreenElement&#xff0c;返回当前全屏元素 <template><div><el-b…