![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SQL练习
我躲过世俗的雨
不与平凡为敌,不与平庸为伍。
展开
-
SQL练习四(错位比较)
SQL练习四(错位比较) Postgresql数据库 现有一张表 TABLE5 如图 编写 SQL 查询,来查找与之前(昨天的)日期相比temp数值更高的所有日期的 Id。 源码 CREATE TABLE TABLE5 ( ID INT, BJDATE DATE, SHUZHI INT) ; INSERT INTO TABLE5 VALUES (1,'2021-03-15',12); INSERT INTO TABLE5 VALUES (2,'2021-03-16',20); INSERT INT原创 2021-03-18 10:15:09 · 679 阅读 · 1 评论 -
SQL练习题三(取近值)
SQL练习题三(数据治理之就近取数) 前言:数据治理中难免会有一些脏数据比如空值,我们一般通过取平均值,取众数,取就近数等方法来填补这些空值,这里用到的方法就是取最近值。 现有一张表(时间、值1、值2)如下: 要求:如果某列的字段在该日期为空值,则查询时结果显示为之前最接近日期的非空值 最终图如下: 这里注意,由于我们填补的NULL值是该日期之前日期的非空值,由于我们插入的数据没有2021-01-1之前的所以会显示NULL值,是预期现象。 源码: CREATE TABLE table3 (L原创 2021-01-07 14:33:31 · 649 阅读 · 4 评论 -
SQL练习题一(逐行累计)
SQL练习题一(逐行累计) 表table1如下,ID为自增,查询出第一条开始到第几条记录的累计金额刚好超过100? 下面是创建表语句: CREATE TABLE table1 ( ID INT, 金额 INT ) INSERT INTO table1 VALUES (1,30); INSERT INTO table1 VALUES (2,30); INSERT INTO table1 VALUES (4,30); INSERT INTO table1 VALUES (8,9); INSERT INTO原创 2021-01-06 10:02:46 · 2932 阅读 · 6 评论 -
SQL练习题二(按等级显示,递归钻取)
SQL练习题二(按等级显示,递归钻取) 有一张地区市的表TABLE2,如图 要得到如下结果: 一、表TABLE2的创建数据 CREATE TABLE TABLE2( ID INT, NAME VARCHAR(15), PARENTID INT ) INSERT INTO TABLE2 VALUES (1,'北京市',0); INSERT INTO TABLE2 VALUES (2,'广东省',0); INSERT INTO TABLE2 VALUES (3,'昌平区',1); INSERT INT原创 2021-01-06 15:01:09 · 442 阅读 · 1 评论