数据库SQL
文章平均质量分 51
数据库
朝一爱学习
这个作者很懒,什么都没留下…
展开
-
SQL之group by连接2个以上字段
2.顺序:where----group by-----order by------having。3. select 后面的所有列中,没有使用聚合函数的列,必须出现在 group by 后面。一个字段就依据一个条件分组,两个字段就依据两个条件分组。在 SQL 中,timestamp 是这张表的主键.1.select后接group by后面的字段。查询合作过至少三次的演员和导演的 id 对。:1050合作过至少三次的演员和导演。不满足另外分为1组。原创 2023-07-24 10:30:39 · 1915 阅读 · 0 评论 -
day02-MySQL的安装和配置以及navicat的安装附永久有效安装包
数据库分为关系型数据库和非关系型数据库。关系型数据库:MySQL、oracle、SQL Server。非关系型数据库:redis。5.1MySQL的安装与配置MySQL版本5.7 链接:https://pan.baidu.com/s/1461hqA7dw6Gwn7y3xYEnAw提取码:1ewv解压(建议放C盘)该压缩包之后,复制路径配置环境变量。配置过程如jdk的安装配置过程。打开cmd,输入mysql –V(注意V大写),显示mysql的版本则配置成功。如果..原创 2021-01-06 18:25:49 · 133 阅读 · 5 评论 -
day01--jdk和tomcat的安装与配置图文详细步骤附百度网盘安装包永久有效
JDK安装步骤以及环境变量的配置1.1JDK的安装版本:链接:https://pan.baidu.com/s/1qHSB8xSutx2olJ4zrdx4rQ提取码:ugiz双击,一直点击next(装到C盘默认安装路径)出现弹窗,不能关闭,点击OK一直点next,等待它自动安装安装好之后点击close1.2环境变量的配置打开“我的电脑”,右键“此电脑”,选择“属性”,选择“高级系统设置”选择“环境变量”在“系统变量”中点击path,选择编..原创 2021-01-06 09:45:30 · 303 阅读 · 0 评论 -
day03-使用命令行操作数据库
7.2.1连接数据库host、port、user、password连接别人的数据库7.2.2表的管理查看数据库选择数据库7.2.3数据的操作查询表里的数据数据库的判断条件:=、!=、>、<、>=、<=、in、not in、is、is not、between、not between、like、not like数据库的逻辑连接:and、or、and not、or not本次只是简单粗略介绍,想具体了解可以看我原创 2021-01-07 15:09:16 · 176 阅读 · 0 评论 -
SQL组内拼接group_concat
group_concat:通俗一点,就是说,group_concat把分组内的数据合并为一个字符串。这个表可能包含重复数据(换句话说,在 SQL 中,这个表没有主键)。此表的每一行都包含产品名称和在市场上销售的日期。3.使用group_concat,组内拼接排序。| 列名 | 类型 |查询每个日期、销售的不同产品的数量及其名称。力扣刷题:1484. 按日期分组销售产品。每个日期的销售产品名称应按词典序排列。2.distinct取不重复的,排序。2.distinct取不重复的,排序。原创 2023-07-25 11:46:39 · 734 阅读 · 0 评论 -
笔记:关于SQL中的几个join的区别
表A包含 10 行,表B包含 20 行,其中 5 行在特定列上匹配。只是两个表的笛卡尔积,与任何过滤条件或任何条件无关。返回匹配的行,表A和表B的并集,5 行。返回表A的全集,表B匹配的行。返回表B的全集,表A匹配的行。返回 10*20=200 行。原创 2023-07-24 17:26:25 · 343 阅读 · 0 评论 -
力扣刷题SQL-1211. 查询结果的质量和占比
3.劣质百分比的计算:分组后的总劣质数*100/总个数,即sum(if(rating<3,1,0))*100/count(*)2.质量的计算:分组后的总质量/总个数,即sum(rating/position)/count(*)列的值为 1 到 5。评分小于 3 的查询被定义为质量很差的查询。1.名字分组,分别计算需要的2个值(质量和劣质百分比)评分小于 3 的查询结果占全部查询结果的百分比。各查询结果的评分与其位置之间比率的平均值。此表包含了一些从数据库中收集的查询信息。列的值为 1 到 500。原创 2023-07-24 15:54:32 · 189 阅读 · 0 评论 -
SQL关于having用法及与where的区别
先找到符合第一季度出售的id,再找到第一季度外出售的id,如果id在这两个表里面,那么这个id就不是仅在第一季度出售。不在其他季度,也有可能不在第一季度出售,也就是都没卖过这个产品,所以要和sales表连接,也就是该商品要有售出记录。1.where用在分组前,having用在分组后。3.分组内,【日期在第一季度的记录之和】=【该分组内的记录之和】(当这两个和相等,说明,这个id对应的产品只在第一季度销售)3.分组后,每组的最大日期和最小日期在给定的区间内。该表的每一行显示每个产品的名称和价格。原创 2023-07-24 14:35:17 · 1313 阅读 · 0 评论 -
力扣刷题SQL-619. 只出现一次的最大数字
后来百度才知道,只有select和某些函数,输出为空的时候才会输出null。而limit正好就是不输出为null,直接输出为空的那个函数。这张表的每一行都含有一个整数。当不存在单一数字,我的输出为空,而不是null。单一数字 是在 MyNumbers 表中只出现一次的数字。解释:输入的表中不存在单一数字,所以返回 null。解释:单一数字有 1、4、5 和 6。6 是最大的单一数字,返回 6。2.计算分组内记录数量等于1。单一数字 ,查询需报告。然后看了别人的解题思路。查询结果如下例所示。原创 2023-07-24 09:52:41 · 318 阅读 · 0 评论 -
力扣刷题SQL-584. 寻找用户推荐人,解题思路及2种解法
ifnull(X1,X2):如果X1是null,则转化为X2。否则,还是输出X1。写一个查询语句,返回一个客户列表,列表中客户的推荐人的编号都 不是 2。给定表 customer ,里面保存了所有客户信息和他们的推荐人。刚开始拿到题想到的就是!=2,然后火速写出了一版错误答案。在查找null的过程中,我看到了另外一个null的用法。2.null表示未知,不确定,并不是表示空值。但是个人觉得这种解法把简单问题复杂化了。1.null是不可以进行大小比较的。原创 2023-07-21 16:19:37 · 289 阅读 · 0 评论 -
力扣刷题SQL-197. 上升的温度---分步解题
timestampdiff(时间类型,时间1,时间2),返回时间1-时间2的时间差,时间1>时间2,结果为负数。编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的。2015-01-02 的温度比前一天高(10 -> 25)比较的是今天与昨天的温度,如果今天高,该id就查找出来。得到如下的表,但不是我们需要的。连接条件为:左表日期比右表日期大一天。所以得到,自连接的条件:左表的日期比右表大1天。条件为:左表日期比右表大1天。找左表温度比右表温度高的记录。要求:比昨天温度高的id。原创 2023-07-21 15:51:01 · 191 阅读 · 0 评论 -
数据库8之嵌套查询
上一篇文章讲到连接查询,连接查询就是一个一个去查找相匹配的行,再返回给用户看。当我们数据量少的时候我们用连接查询没有太大问题,可是,当数据量大的时候,连接查询效率显然不高。这个时候我们可以用嵌套查询,可以提高查询效率。还是上一个例子:查询和学号为“131101”的学生同系的学生信息。我们可以先在xs表中通过学号“131101”,很容易查找到该同学的系为“计算机”,就确定了一个范围,利用该范围,就可...原创 2023-04-26 15:43:53 · 2647 阅读 · 1 评论 -
初学者----SQL最基本的语句(方便复习和记忆)
列了一些最基本的语句,方便自己复习和记忆原创 2021-01-09 16:46:51 · 185 阅读 · 0 评论 -
day03-navicat的使用
7.1.1连接数据库(IP、端口、账号、密码)打开navicat,选择连接,MySQL填写连接名,测试连接,点击确定。连接其他电脑上的数据库,输入对应IP、端口、账号、密码。7.1.2创建数据库右键本地数据库,选择新建数据库。填写好数据库名,字符集选择utf8mb4,点击确定。数据库名字:1.英文2.不能使用符号但可以使用”_”3.不能使用数据库保留字字符集:utf8、utf8mb4(新版本,支持生僻字)7.1.3设置账号密码在navicat中选择用户原创 2021-01-07 15:01:55 · 214 阅读 · 0 评论 -
数据库4之完整性约束的概念及分类
之前的文章有讲到数据库的基本概念,怎么绘制E-R图,以及表的各种概念等等这篇文章讲的是数据的完整性约束。完整性约束:规定了什么样的数据能够存储到数据库系统当中。当写入的数据不满足当前的约束的时候,就不允许写入。防止错误数据的输入和输出造成错误结果和无效操作。(数据完整性)区分数据安全性:数据安全性是指非法用户的非法操作对数据库造成的恶意破坏。例如:为了维护数据的完整性,DBMS必须1.提供定义完整...原创 2018-06-25 10:46:56 · 8419 阅读 · 1 评论 -
数据库5之完整性约束的实现
在上一篇文章中,我们已经对完整性约束有了一定的概念,并且做了分类。实验操作放在另外一篇文章分类:1.实体完整性约束2.域完整性约束3.那么怎么实现完整性约束呢?1.完整性规则的定义:通过SQL,也可以SSMS交互式创建2.(运行时)进行完整性规则的检查一、实体完整性约束1.主码(primary key)约束-->可以定义为表级约束条件,也可以定义为列级约束条件区别:2.唯一(unique)约...原创 2018-06-25 13:09:29 · 6606 阅读 · 0 评论 -
数据库6之单表查询
当用户登录到SQL Server后,就被指定一个缺省数据库,该缺省数据库就是Master数据库。此时我们新建一个数据库,用来存放我们自己的数据。单击右键,选择新建数据库再点击右下角的确定,一个你自己的数据库就创建完成啦。当然你也可以选择初始大小和自动增长的值,我这里设置为默认。我们需要调用自己的数据库来存放自己的数据,有两种方法:-->可视化操作选择你需要用的数据库就可以了-->用us...原创 2018-06-25 15:39:24 · 451 阅读 · 0 评论 -
数据库7之连接查询
连接查询,涉及两个或两个以上的表。这种查询是关系数据库中最主要的查询。连接查询的两种表示形式:1.用连接谓词(1)连接谓词“=”在select语句的where子句中使用比较运算符对多个表进行连接。比较运算符在我的文章“数据库6之单表查询”中有写到,此处只讲最常用的连接谓词“=”当比较运算符为“=”的时候,也被称为等值连接。注意:等值连接只要有等值的条件,不需要列的属性相同。属性:数据类型、存放的数...原创 2018-06-25 19:33:53 · 512 阅读 · 0 评论