我的接口返回的数据顺序总是不固定问题描述====我在开发突发奇想。将表头信息也给查出来一并返回给前端了。但是正因为这一举动却带来嘲讽。...突然接到一个需求是要求将数据列按照一定顺序返回。前端直接按照我返回的顺序进行渲染。刚接到需求觉得很简单,将数据依次写入就行了。关于具体需求我们就不深究了。下面梳理下当时发现问题及解决的一个过程吧。...问题分析====下面我们向HashMap 中添加如下元素 。然后当我们map进行输出的时候是先横向遍历。当遇到有纵向数据是在纵向遍历。...感觉有点排序的感觉当时为了解决问题就决定尝试一把。结果是完美的。bug解决收工回家。对应刚入行的我还是很有成就感的。时隔多年现在又重新收拾了下自己的bug。...决定一探究竟为什么LinkedHashMap 可以实现按照写入顺序排序。通过结构图我们清楚看到他是HashMap的子类。所以他的存储结构和HashMap基本上是一样的。
我准备从一个后端最常用的 CURD 例子说起,一步一步阐述这过程中 Laravel 都是怎么完成的;以及~大家~(我)为什么喜欢用 Laravel。...因为我们已经完成了数据表中字段的定义、表与表的关系、以及最重要的一步:如何将数据及数据之间的关系写入数据库中,下面简单的来介绍下在 Laravel 是如何完成的。...我们还使用了 Laravel Resource 来格式化最终的输出格式,这样做的原因是很多情况下我们不希望直接将数据库的字段暴露出去,你甚至还能在 Laravel Resource 中按不同的角色显示不同的字段...我其实很不明白作为一名工程师为什么我们会瞧不上某一门语言?...不过我觉得 Laravel 的不足不在性能,毕竟 PHP 作为脚本语言,就算我们把它优化到极致,也不可能达到类似 Go 那么高的吞吐率,如果真的是为了性能,那为什么不选择其他更适合的语言呢?
在我的文章、书或视频中,均介绍过Excel Power Pivot中的按列排序问题,通过按列排序,可以实现一列数据参照另一列的顺序进行排序,具体可以参考文章《PP-入门前奏:传统透视表无法完成的简单的排序问题...但是,这之前一直没有讲,这个功能其实是有个缺陷的:你只能按既定的升序进行排序,不能在生成透视表的时候选择降序。...如下图所示的排序: 当选择降序时,透视表里会转换回Excel中“姓名”的排序方式,而不是Power Pivot中设置的参照排序: 如果需要调整回参照排序,排序选项中要选择...“数据源顺序”,但,没有降序的可选项!...——这需要去调整参照排序列的具体内容,比如原本的参照是1,2,3,4……的,调整为-1,-2,-3,-4…… 总的来说,参照排序目前在Excel里实现的是一种相对固定的方式,但也是对Excel
当给定数据与源不匹配时,也可以使用 UPDATE 或 DELETE 子句。...这意味着 Google BigQuery MERGE 命令可让您通过更新、插入和删除 Google BigQuery 表中的数据来合并 Google BigQuery 数据。...计算单词数 Counting words 执行 UNNEST() 并检查您需要的单词是否在您需要的列表中可能在许多情况下很有用,即情感分析: with titles as ( select 'Title...这是一个不好的例子,因为由于匹配的表后缀可能是动态确定的(基于表中的某些内容),因此您将需要为全表扫描付费。...09–17', interval 1 day)) as dt ; 9.排序Row_number() 这对于从数据中获取最新信息(即最新更新的记录等)甚至删除重复项很有用: SELECT * FROM table_a
接下来,可以在同一数据集中建立另一个数据透视表。 选择 “Sales” 表中的任意一个单元格,【插入】【透视表】【现有工作表】【位置】在工作表的 “F11” 中。...在 “Days” 列中包含了一周中的多个天。 为什么有人会以这种方式设置他们的数据,这超出了用户的工作范围,但现实是,清理这些数据的工作是留给用户的。...7.3.3 拆分后逆透视 vs 拆分到行 来看看与最初的要求有什么不同,比如说用户已经决定,数据中的 “Cook” 不想要现在这样透视的结果。为了在尽可能在少的点击中做到这一点,可以进行如下操作。...7.4.3 数据排序 在本章中,要探讨的最后一项技术是排序。继续上一节的内容,用户希望按 “State” 列的升序对数据进行排序。...但如果数据将被加载到 Excel 或 Power BI 中的数据模型为了后续制作透视表,那么对输出进行排序是不必要的,因为在展示层可以再进行排序,解决这个问题。
小勤:大海,公司有个数据本来应该2列的,他们分成好多个2列并排着录了,后面数据统计可麻烦了,怎么转成规范的数据啊?...小勤:我也尝试了一下用PQ来解,但感觉搞不定呢。 大海:这个其实不难,但需要对PQ里的透视、逆透视和添加列等运用得比较熟练,我做一遍,你慢慢体会一下。...Step-1:获取数据(注意:因为标题名称重复,为避免PQ在相同的标题后加上数字,这里不要选择“表包含标题“,不理解的自己动手试一下选择”表包含标题“的情况对比一下) Step-2:转置表 Step...除(整数)“列,逆透视其他列 Step-7:基于型号数量列对值列以不聚合的方式进行透视 Step-8:删除不需要的列 Step-9:数据上载 小勤:为什么要加上那个“除(整数)“的列呢?...大海:这里每2列为一组,转置后,大家都用了同样的标题,为了能在后面的透视过程中区分不同的组,就只好再想办法加上一个特定的标志。 小勤:原来这样,感觉有点儿绕,我再练练加深一下理解。
现在,我要说,这些咋看起来似乎都得到了正确结果度量,实际上并不是完全正确的!...我们先来看一个常见的简单例子(配套数据见文末)——人员产品销量利润表: 要对人员、产品透视数量之和,并按产品进行数量排名。...先求数量之和(总数量): 然后写按产品数量排序的度量: 然后,放入透视表里: 这个排序看起来是不是都对? 是的,这里的确看起来没有错,但是,如果用同样的方法,求销量升序排名试试?...再加入透视表里,纳尼?怎么都没有第1名了? 又或者,对利润进行排序: 放入透视表: 纳尼?为什么没有第4名?...这里涉及到的知识点比较多,而且又是一些原理性的内容,我将在后面专文分享,敬请关注! 大家也可以先思考一下,为什么这个方法不行?应该用什么方法?看看是否跟我后续提供的方法一致。
引言 上一章我们了解了使用laravel迁移功能创建数据库表,把DBA的工作挪到开发端,这样把岗位都省出来了。 但是只有光秃秃的数据库表,有个壳子没有数据确实没啥用。...本文为大家讲讲laravel怎么给数据库造假数据,堂而皇之地假装生产。 本文使用的构建方式都是写脏数据,乱数据,无实质意义的数据,只对应用程序和数据库有用,别的嘛用没有!...数据库也一样,数据库表就好比是地,种地我们得有种子,才能在命令行这样使用: php artisan migrate --seed 或者让数据库一切从头开始,旧的数据清空,然后填充: php artisan...为什么这么写?类不类,方法不方法,函数不函数的!没错,就是一个代码片段,laravel约定的东西, 你这么写,在执行数据填充和测试的时候,它就起作用!就这么神奇。 那如何控制填充条数呢?...Happy coding :-) 我是@程序员小助手,专注编程知识,圈子动态的IT领域原创作者
使用频率最高的一般有12个小招: 首行作标题、修改数据类型、删除(重复、错误、空项目)、拆分、提取、合并、替换、填充、移动、排序、格式、逆透视。 ? ?...2 修改数据类型 我们使用PowerBI时数据类型的不匹配是常常犯的错误,如果你发现数据输出的结果有问题,第一时间先想想是不是因为数据的类型定义有问题。...PQ中丰富的数据类型,只需要单击列名称左边的符号即可快速修改。 ? 3 删除重复、错误、空项目 这个功能与Excel非常相似,当我们想剔除表中的重复行、错误项目时,右键单击列,删除重复项或删除错误。...所以有了PQ,这几个常见功能我们不用再纠结背公式了~ 12 逆透视 最后这个是一个大招!我们从他人那里获得数据往往格式多样,有时还是二维表,然而我们只有它转变成一维表才能进一步利用和分析。 ?...Power Query的逆透视功能可以让我们一键搞定。 ? 本节的内容有点散,具体的招数也需要大家在实践中熟悉。掌握了这12招,我相信你又上升了一个新高度。
由于此次的销售目标表暂时不需要,也可以不建立表间关系。 第三部分:建立分析维度 分析维度主要是通过DAX表达式来完成的。具体如下所示。 第1步:编写基本的度量值。...分别建立“前N名”和“排序依据”两个参数表。在工作表中先准备好相应的字段和值,再将其添加到数据模型中,这两个参数表不与其他任何表建立关系,如图11-2所示。如图所示。...第四部分:制作分析报表 将上述的数据使用数据透视表的方式制作数据报表(当然也可以使用链接回表或者多维数据集的方法制作报表)。...第1步:将上述准备好的度量值放置于数据透视表中,并且将相关的切片器添加到数据透视表中。但是当前使用“前N名”和“排序依据”这两个切片器还无法进行筛选,需要进行后续的设置。...第3步:此时,可以根据“排序依据”筛选数据了,但是“前N名”切片器还无法进行工作。这里我们可以借助数据透视表的值筛选功能,给筛选设置一个规则即可。例如,当选择“前3名”时,筛选出前3名的数据。
图2 创建数据透视表 数据透视表非常适合此情况,它可以按照图表中需要的方式对数据进行汇总。 图3 球队是按字母顺序排列的,稍后在绘制图表之前会进行整理,可以看到他们的得分、进球差和得球数。...筛选是周数,因此通过更改它,数据透视表将显示季节中该周的数据。 创建要绘制图表的数据 显然,图表需要显示每个队的得分。...系列1是俱乐部的实际得分。系列2是调整后的积分,考虑到进球差和进球得分,可以使用俱乐部的徽章作为本系列的标签。 为了创建所需的数据,创建了一个表,该表使用GETPIVOTDATA从数据透视表中获取值。...为了将所选周的数据输入到表中,从而绘制到图表中,代码会更改透视表上的筛选器。此筛选器是工作表中单元格I1中的值。 因此,数据透视表中的数据流入计算表,计算表依次输入排序表。...该图表绘制了排序表中的数据。 当然,排序表中团队的顺序与图表中显示的顺序相同。随着代码进度遍历每周,图表数据会发生变化,轴标签会正确反映排行榜。
,然后跟日历表做关联——这种情况我们后面再讲),如下图所示: Step 02-将数据导入PQ并进行初步处理并加载到PP数据模型 将日期表的数据导入PQ,并在PQ中用换行符及横杠连接日、假期及备注等相关信息...: = Text.From([日]) & "#(lf)" & Text.Combine({[假期], [备注]}, "-") 为什么要在这一步进行这样的处理而不直接在后面的PP...处理完毕,将数据加载到Power Pivot数据模型: Step 03-在PP中添加度量,并创建透视表 在PP中创建度量,如下图所示: 这里的MIN可以改为MAX等函数...Step 04-通过透视表生成休假月历 前面准备好相应的日期表和度量后,即可在透视表中直接生成2020年休假月历表: Step 05-设置透视表的分类汇总、总计项及报表布局方式...里的情况类似,解决方法一致,即选中透视表所有数据后,操作一次“自动换行”(同时设置一下文本居中)即可: Step 07-添加条件格式 用公式法设置条件格式,条件公式为:= FIND("假
小勤:透视表里这个求和怎么是错的啊? 正确的应该是这样的啊: 大海:这个销售利润怎么算出来的? 小勤:添加“计算字段”,然后放到透视表里。公式应该没有错吧?...大海:这个通过计算字段来求解还真是错的。 小勤:为什么呢?透视表那个结果到底怎么来的?...但为什么我添加的库存结存数没问题啊? 大海:库存结存数的计算是求入库和出库的差值,”先分别求差值再求和”跟“先求和再求差值“的结果是一样的。 小勤:对哦。那像销售利润那种要先乘然后再减的情况怎么办?...大海:我看你的数据表是用Power Query从多个表汇总的,既然这样,可以直接在Power Query里添加自定义列: 这样,把每一行产品的销售利润先算出来,这样到了数据透视表的时候就可以直接用了...小勤:通过Power Query添加自定义列或Power Pivot添加计算列或度量,能在有新数据的时候一键刷新得结果,这个真是好!
下面开始正式讲解Excel数据分析: 数据清洗 数据分列,可以实现以下效果。 与之相对应的是合并:将两列合并为一列。方法很多,我习惯用“=A1&B1”将A1列与B1列合并。 ?...一般情况下,我们会让排序同步变动,否则数据会出现不匹配。 高级筛选:微软的风格是功能越牛逼的功能,越是隐藏的深,前面的“数据分析”,“规划求解”是这样,“高级筛选”也是这样。 ? ? ?...数据透视表:这个在工作中经常用。 对一个表拉数据透视表:可以做不同的可视化呈现。 ?...同一工作簿多表合并: 前提:一维表结构;列字段相同;无合并单元格 Alt+D,松开按P进入数据透视表图向导界面,然后按图操作 ? ? ? ?...完成之后,双击数据透视表,可以在功能区拖拽行、列、筛选、值,实现不同的可视化呈现!
N条 连起来读就是从XX表中查询满足XX条件的XX列,结果依据XX分组,依据XX排序,限制返回N条。...就像讲EXCEL的文章一定要讲数据透视表一样,数据的基本统计数据(例如统计学的五数)是分析师最先关注也是最容易获取的有价值的数据。学习SQL的聚合函数,我们可以通过对比EXCEL的数据透视表来学习。...聚合函数类似EXCEL数据透视表中“值”的部分。 (2)group by关键字 group by关键字用于指定依据哪些列计算聚合值,为什么要存在group by关键字呢?...group by关键字类似于EXCEL透视表中的“行”和“列”的部分。...avg(score) >= 60 注意,这里的having筛选与EXCEL透视表的筛选并不是一个功能,having是对聚合值的筛选,EXCEL透视表的筛选是对字段的值的筛选,这与SQL中的where
不过,也有人批评说数组公式对于大多数人来说都不懂,所以这不是最佳解决方案,于是给出了另一个解决方案,即先对原始数据排序,然后直接用vlookup读取——需要取最大值时从大到小排,需要取最小值时从小到大排...而实际上,这个问题我最推崇的解法应该是数据透视,有多简单?直接鼠标点拽几下搞定!因为透视表里的值直接支持设置“最大值”和“最小值”啊。...,其实,我借这个问题,更想说明的一点是,分组依据和数据透视的差异,以及在Power Query中,碰到类似问题时,应该使用什么样的功能。...大家应该注意到,这个问题在Excel传统功能中解的时候使用的方法是数据透视,但在Power Query中使用的是分组依据,而不是透视! 为什么?...实际上,在Excel的数据透视功能里,对于单纯的将需要统计的数据放到值中,而不将某些统计维度放到列中的情况,是对数据的分组功能,而不是透视的功能——只是Excel中的数据透视表兼容了这种数据统计方式而已
对此不能理解的同学,请仔细观察一下上面找来的网图,其实几乎所有的图表要素都是能在Excel中以各种各样的方式实现的。...这里就不赘述应该如何插入数据透视表了,我们直接在数据辅助计算页给出结果。 然后选中数据透视表的数据,插入图表。 接下来就是重点了,把这个图表用剪切的方式挪到最终呈现页那个sheet上去。...这都是Excel常见的坑,尤其是数据透视表,这玩意经常会出现一些玄学问题。之所以称之为玄学,是因为这种问题是时有时不有的问题,所以很难给大家截个图演示一下。...简单来说,就是数据刷新了,但是透视表的结果没有更新,并且点击刷新有可能是不生效的。这种时候,我们通常有一个简单的小办法来识别这种异常:新建一个sheet页,写一些统计公式,来核对数据是否正常。...我不推荐大家一开始就选择全部公式写以规避麻烦,毕竟数据透视表能实现的这种功能要是写成公式还是很麻烦的。我推荐的做法是先保持透视表+查验逻辑运行,如果有问题再把透视表改成手写公式的办法。
本系列教程使用 Laravel 5.0 版本,5.1 版本去掉了本系列教程主要讲解的元素(Auth 系统),不建议使用 5.1 来学习。...在 Eloquent 中,数据库中每一张表对应着一个 Model 类(当然也可以对应多个)。...表和 pages表的数据库迁移,进入 `learnlaravel5/database/migrations` 文件夹。...pages 表已经出现在了数据库里,去看看吧~ 5....db:seed 去看看 pages 表,是不是多了十行数据?
太多的人觉得每个月一个表格存放数据,一年12个月,一个工作薄文件里放12个工作表,然后还有大量的插件批量生成工作表,批量重命名工作表、工作表排序等一系列的功能来辅助完成这些提速性工作。...殊不知这样一搞,整份数据源就面临灭顶之灾:排序、筛选不能用了,数据透视表也报错了等等。 更糟糕的是,各大插件还赶来帮倒忙,合并了数据不丢失,合并了可以还原数据等等。...我理解的批注:批注是个临时性的标记,用于查看过程中手工发现问题记录一下 正确的作法是把批注过的内容,需要重新以数据源的方式追加到数据源内,通常新建一列,填写相应的内容。...某些时候,因数据分析的上层需求,需要在数据源中提取相关信息作分析,如果数据源不规范,在数据处理过程中,通过查找、替换或各种插件的功能对数据源进行更改,并在原单元格上覆盖保存。...多用数据透视表吧,数据透视表不能满足的部分,就用数据表公式引用下结果数据,每月要更新报表,刷新下透视表,然后复制粘贴到PPT之类的排版下,完工,回家好好过生活。
领取专属 10元无门槛券
手把手带您无忧上云