精华内容
下载资源
问答
  • 一条数据对应多个日期
    万次阅读
    2019-09-30 17:05:47

    先看应用场景,汽油的价格存在一张表中,每个城市的价格不同,且隔一段时间全国所有城市的油价就会调整,调整幅度也各不相同,统计之后的价格由负责人以excel的形式使用其他功能批量写入数据库中,存在表中的数据大概(不便泄露真实字段)如图所示:

    表中没有其他字段代表该条记录已经作废,所以读取价格时,总是读取最新的一条记录,具体实现如下:

    SELECT *
    FROM
    (
        SELECT *,
               ROW_NUMBER() OVER (PARTITION BY CityName ORDER BY FromTime DESC) RowIndex
        FROM dbo.MyTable
    ) B
    WHERE B.RowIndex = 1;

    表中所用的PARTITION BY与Group By有类似,但又有不同点,这里不再赘述,有兴趣的同学请自行了解

    更多相关内容
  • 在报表开发中,经常遇到这样的问题:分组后,只需要每分组最新的一条数据,其他的就不要了  此时的思路应该是:对分组进行排序,并编号,然后select编号为1的记录即可。  代码如下: select rn,a,b,c from ...

    原链接:https://www.cnblogs.com/interesting-whh/p/10456987.html

     

    在报表开发中,经常遇到这样的问题:分组后,只需要每个分组最新的一条数据,其他的就不要了

      此时的思路应该是:对分组进行排序,并编号,然后select编号为1的记录即可。

      代码如下:

    select rn,a,b,c
      from (select ROW_NUMBER() OVER(PARTITION BY a ORDER BY b DESC) rn,a,b,c
                  from table)
     where rn = 1

    原表:

         

      执行代码后:

          

        

      此思路可以运用到各种分组并按分组排序后获取第一条数据,即取分组最小记录或最大记录的情况

    展开全文
  • 像图1这种情况,前面的字段内容全部都一样,只有其中一个字段的内容不一样,就可以把这些字段的数据整在查询结果的字段里: sql语句: select uid,LXR,等等其他字段,GROUP_CONCAT(clcpmc separator'、') group ...

     

    直接上图,更直观一点

     像图1这种情况,前面的字段内容全部都一样,只有其中一个字段的内容不一样,就可以把这些字段的数据整在一查询结果的字段里:

    sql语句:

    select uid,LXR,等等其他字段,GROUP_CONCAT(clcpmc separator'、') group by uid;

    关键词:GROUP_CONCAT()  ,第一个参数为想要整合数据的字段名,第二个为设置分割符,不写的话好像默认是,号

    必须跟 group by 连用,否则会报错

    结果如图2

    展开全文
  • 总之这业务逻辑有问题,数据库建表也是有点问题,他关联的表中没有唯一的主键如下,关联两张表,查询出来相关的数据,如下:selecta.id as 'id',a.title as "title",a.slug as "slug",b.org_id as 'orgid',b.user_...

    总之这个业务逻辑有问题,数据库建表也是有点问题,他关联的表中没有唯一的主键

    如下,关联两张表,查询出来相关的数据,如下:

    select

    a.id as 'id',

    a.title as "title",

    a.slug as "slug",

    b.org_id as 'orgid',

    b.user_id as 'userid',

    b.updated as 'time'

    from dashboard a, dashboard_snapshot b

    where a.title = b.name;

    两张表并没有唯一的关联字段当主键,不太严谨,现在已title字段进行关联。

    02cc3dd30b8b

    image

    查询出来5条记录,怎么让 当org_id user_i相同的记录,只获取最后日期的那条记录。

    使用group by

    group by 过滤出来的是某个字段列的唯一的记录,

    如果想获取多个,就group by 多个,这样如果其他都相同的情况下就只有一条记录了;

    最后使用mysql中max()函数就可以取到最大值的那条记录。

    select

    a.id,

    a.title,

    a.slug,

    b.org_id as 'orgid',

    b.user_id as 'userid',

    max(b.updated)

    from dashboard a, dashboard_snapshot b

    where a.title = b.name

    group by b.org_id,b.user_id,a.title,a.slug,a.id

    02cc3dd30b8b

    image

    但我总感觉这样写不太符合业务实际,又不知道会存在其他的什么潜在问题。

    展开全文
  • select t.* from (select a.*,row_number() over( partition by a.QYZCH order by a.BGRQ desc) rn from EX_GONGSHANG_01V3_KYDJ_06_46 a) t where rn = 1;
  • MySQL中查询时间最大的一条记录

    千次阅读 2021-01-18 20:09:22
    但是这样是取不出用户登录记录中时间最大的那个 ip , 仅仅只是查到了最大时间,和 ip 没关系找了相当的文章,经过自己测试,发现一个比较好的方式处理这问题,举例如下:现在假设有一张数据表 A , 字段和数据如下...
  • 多条SQL实现,适合数据量比较大的情况 SQL为Teradata下代码,其它数据库需作调整 创建临时表,存储要取字段的范围 create multiset volatile table tmp_table ( key_name varchar(100), last_date varchar(100)...
  • 今天有需求,是通过两张表进行查询。一对的关系。通过一主键,取出其中的一条。 开始以为还好,直接用用了left join on进行查询。却发现了问题所在。 其他的好弄。 开始的写法借鉴这篇博客: ...
  • 例如有两个表goods和prices,商品表中的一条商品信息会对应价格表中的多条价格信息,现在要根据商品表查询其商品对应的可用最新的价格,即要满足价格的生效日期必须在商品上市之前,如果有多个价格,就选取最后生效...
  • 左连接的表中有多条数据只取一条

    万次阅读 2018-04-30 21:46:47
    日期最大的一条数据CREATETABLEa(idINT)CREATETABLEB(cidINT,adddateDATETIME)INSERTINTOaSELECT1UNIONSELECT2INSERTINTObSELECT1,'2010-10-01'UNIONSELECT1,'2010-10-02'UNIONSELECT2,'2010-10...
  • 在MySql中 做分组时想取出每一组最新的时间那一条,但是做了分组后发现每组取的时间不是最新的,也是进行了下述操作 一.先进行排序在进行分组 执行sql select * from (select pihao,spbh,cgl,dj,created,provider_id...
  • 1.将源数据按关键列值排序(如列1、列2(列2降序)) 列1 列2 列3 A 2021/7/13 ...2.使用VLookUp去取已排序的数据(默认就是取第一条,第一条为最新日期数据) 列1 列2 列3 A.
  • 本文此处所规定的类别为省份ID,原始表如下图所示: ...select a.* from tbl_MaterialPice a,(select province_ID,max(price_time) price_time from tbl_MaterialPice group by province_ID) b ...
  • Python 实现行输入多个数字(用空格隔开)很多人都会使用以下代码,来实现多个字符串的连续输入,但是这是以换行进行操作的,而有些题目需要将一些数字进行行输入a=input()b=input()1.实现行输入多个数字,并以...
  • 直接上sql:SELECT l.*FROM Users u, Location l WHERE u.id = l.Userid AND l.[time] = ( SELECT MAX ([Time]) FROM Location WHERE UserId = l.Useri
  • //每柱子的颜色即为colorList数组里的每项,如果柱子数目多于colorList的长度,则柱子颜色循环使用该数组 color : function (params) { var colorList = [ //柱子颜色 '#C1232B' , '#B5C334' , '#...
  • 现在假设有一张数据表 A , 字段和数据如下: 姓名(name) 身份证(唯一标识)(id) 购买产品(pro) 价格(price) 数量(count) 购买时间(time) 张1 111111 Computer 1600 5 2018-03-03 ...
  • 我想查询【每交易卡号的首次交易日期】,则用下列语句: select [dbo].[【购物卡】核销表].交易卡号 as 交易卡号 ,min(交易日期) as 首次交易日期 from [dbo].[【购物卡】核销表] group by [db..
  • 数据记录查询

    千次阅读 2021-11-22 09:00:00
    在具体应用中,经常需要实现在一个查询语句中显示张表的数据,这就是所谓的数据记录连接查询,简称连接查询。 MySQL软件也支持连接查询,在具体实现连接查询操作时,首先将两或两以上的表按照某个条件...
  • 如果有多个绑定关系时取关联表id最小的关联关系,要求写出支持按组织名称或页面名称过滤的分页查询SQL h5页面表 CREATE TABLE `h5page` ( `Id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键id', `Page...
  • 数据如下 想去重name值并且保留ID最大的记录 //查询 查看是否是需要删除的记录 SELECT * FROM test where id not in ( SELECT id from (SELECT MAX(id) id FROM test GROUP BY name) a ); //删除对应的记录 DELETE...
  • left join 时从右表的多条数据中取1条

    万次阅读 多人点赞 2019-01-12 16:37:59
    使用left join时,左表为主要表格,从右表中获取数据作为辅助注释,然而右表中存在多条,如何取其中1作为想要的数据。 代码 错误情况: select l.*,r.辅助注释 from left_table l left join right_table r on ...
  • 白话Elasticsearch01- 使用term filter来搜索数据中演示了filter 单个过滤条件使用 term 的用法,只有个term条件,如果有多个呢? 这里我们就来学习下基于bool组合多个filter条件来搜索数据 ...
  • 有时候会遇到个格子里面需要放入多个字段的情况并且还要判断类型不同显示的内容不同的情况,代码如下: <span slot="actions" slot-scope="text" class="table-btn-box"> <template id="payTypes"> ...
  • 最近段时间,工作上花了不少时间用MATLAB处理工厂下线的数据数据庞大不说,复杂度也高,各种推算和统计所以今天我打算总结一下,平时我在用MATLAB做数据分析时常用的几小技巧正好全国大学生数学建模竞赛下周...
  • Sql server 取按日期最大的一条记录

    万次阅读 2016-03-21 17:37:28
    select * from T_Test A where date=(select max(date) from T_Test B where A.[Name]=B.[Name]) 原表记录 执行后结果
  • 表tariff_info, 原始数据: ...想要的结果:以start_time时间倒序排序, 以code分类, 查询每一类最新的一条记录 sql: SELECT a.* FROM TARIFF_INFO a, ( SELECT code, MAX (start_time) st...
  • mysql快速查询数据库中有多少条数据

    千次阅读 2021-01-18 20:16:26
    慕尼黑的夜晚无繁华mysql 统计 表的数量:SELECT COUNT(1) FROM information_schema.TABLES WHERE ...MySQL中有一个名为 information_schema 的数据库,在该库中有一个 TABLES 表,这表主要字段分别是:TABLE_SC...
  • 一个销售系统,将每天所有团队的销量做一个统计展示。 团队名作为legend,日期作为x轴,销量y轴 数据为: datas:[{ date:"2019-10-01", groupdata:[{groupname:"团队1",price:"1000.0"}, groupname:"团队2...
  • 对于主表中一条记录,对应明细表中的96条数据,每一条数据相隔15分钟,明细中没96条数据对应主表中的一个日期trade_date,并且每条明细中有一个字段start_time, 即明细中每96条数据中第一条数据中start_time为00:00,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 158,398
精华内容 63,359
热门标签
关键字:

一条数据对应多个日期