问题标签 [dynamic-pivot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
421 浏览

mysql - 在 MySQL 中构建动态数据透视查询

我有这个查询,它有以下输出:

在此处输入图像描述

我需要的是编写一个查询来获得以下输出: 在此处输入图像描述

我关注了与动态数据透视查询相关的其他帖子,但 MySql 对我来说是一个新主题,我不知道如何在我的情况下使用准备好的语句?

我得到的错误信息是:

我正在使用 MySql Workbench 6.0 CE

0 投票
2 回答
216 浏览

sql-server - 具有不同列的动态枢轴

我有一个 POA 代码动态数据透视表,它从 DX 临时表中提取数据并将数据插入到临时 POA 表中。
我遇到的问题是最多可以返回 35 个不同的列。根据月份,可能有 15 列 ( POA1...POA15),也可能有全部 35 列 ( POA1...POA35)。我在另一个病人表上加入了这个动态数据透视表。我的问题是,即使临时 POA 表中不存在某些列,我也需要显示所有 35 列。

我在患者查询中收到无效的列名,因为某些列不存在于##tmpPOA. 我考虑过创建一个名为#tmpDxPOA并执行插入 ( Insert Into #tmpDxPOA select * from ##tmpPOA) 的临时表,但这不起作用(我收到一个列名或提供的值的数量不匹配错误)。

即使没有任何数据,关于如何创建所有 35 列的任何想法?我不在乎它们是否为空,我只需要在主要患者查询中包含这些占位符,并且返回的列数每个月都不同,这无济于事。

0 投票
3 回答
1334 浏览

sql-server - 如何在动态数据透视中使用行和列总计对工作日进行排序

我有一张表,其中有一些员工详细信息,例如 id、employeeid、workdate、taskid、hours、entrydate、entryby

另一个表有关于用户的基本信息,如名字、姓氏、电子邮件ID、密码

现在我想创建一个交叉表查询,我想在其中显示用户名和工作日以及员工的工作总小时数。好吧,首先我想为此使用临时表,但我没有这样做,所以我在一周中的每一天都使用这样的东西

但对我来说,这是行不通的。任何人请告诉我使用枢轴的查询我想要这样的结果在此处输入图像描述

0 投票
1 回答
1996 浏览

sql-server - 如何在动态枢轴中将两列组合成单列

我有这样的架构

演示数据和模式在这个小提琴http://sqlfiddle.com/#!3/dd89d5/1中给出

在输出中,我想将行转换为列。在我想要的输出中,

我想要对月份,年份进行排序

我经历了很多线程并找到了一个小提琴。并尝试定制以满足我的需要

这是我尝试过的 http://sqlfiddle.com/#!3/dd89d5/1

但无法得到解决方案。请帮我

0 投票
2 回答
44469 浏览

sql - 如何以日期为列动态旋转

我有一张带有产品 ID 和名称的表格,还有一张带有这些产品在特定日期的库存的表格。比如Item1had 6stock on1-1-20148stock on 2-1-2014。我试图在存储过程中显示这些,使其看起来像日历,显示一个月中的所有日期以及单元格中可用的库存。展示这一点的最佳方式是什么?

例如:

原始表 - 名称

原始表格 - Stockdates

0 投票
0 回答
92 浏览

sql-server - SQL - 将静态枢轴转换为动态枢轴

我有以下有效的静态枢轴:

它创建下表:

但是,我想将其转换为动态枢轴。因此,我想更改代码,以便它从中获取不同的货币代码e.CURCODE并生成相同的数据透视表。

多谢。

0 投票
2 回答
163 浏览

sql-server - SQL - 双枢轴 - 第二个枢轴(有计数)未按预期工作

我有一张如下表。让我们称之为TBL1

请注意,这TARIHS只是在末尾添加TARIH字符串的版本SAYI。我使用它是因为我需要不同的列名来进行双数据透视。我想构建一个执行以下操作的双枢轴:

因此,我想得到一个如下表:

但是,当我构造双枢轴时,我得到以下信息:

有人可以帮我写代码吗?我没有把我的原始代码贴在这里,因为它有点长,但我总结了它给你一个大概的概念。

我还想让您知道,如果我TARIHS从所有选择中删除并且只想执行第一个枢轴,我的代码就可以工作。但是,当我将第二个枢轴添加TARIHS到组合中时,我得到的表格不是我想要的。

谢谢!

0 投票
2 回答
414 浏览

sql - SQL - 使用 UNION ALL 调试动态 PIVOT 代码

我需要帮助!我的代码的第一部分如下:


到目前为止,没有任何问题。使用上面的代码,

给出输出:


查询的第二部分是问题发生的地方。代码结构如下:


第二部分不起作用。我可以通过做三件事让它工作:

1-使枢轴静态(即替换'+ @cols +'[TL],[USD],[EUR]

2- 从 UNION ALL 组合中删除表 2、表 3 或表 4。不知何故,只删除一个表会使动态数据透视起作用。

3- 我可以删除表 2、表 3 或表 4 中的一个,然后再次添加剩余的表之一作为另一个 UNION ALL 添加。奇怪的是,这也有效。所以问题可能是 4 个表的某一方面可能会干扰 PIVOT 语句。

但是我想包括从 1 到 4 的所有表格,并且我希望有一个动态的枢轴来调整自己以适应变化!

请注意,如果我在没有 PIVOT 结构的情况下使用所有 UNION ALL 运行 SELECT 语句,则代码也可以正常工作(如下所示)

我的原始代码是:


执行查询时出现以下错误:

到目前为止,我还无法确定问题所在。我不认为我的代码存在逻辑问题,因为我的代码的两个部分都可以独立运行,但是当我使用 PIVOT 运算符加入它们时,它会失败。您能否查看我的代码,看看我的推理或语法是否有任何错误?

谢谢!


更新

我知道我的 UNION ALL 有效。以下是我原始代码中 PIVOT 构造下的代码:

代码自己工作,但是当我把它放到 PIVOT 结构中时,它失败了。请帮忙!或者你能告诉我一种我可以用来代替 PIVOT 的方法,它会给我同样的结果吗?


更新

我认为我的查询长度有问题,因为当我运行时print @query,我得到以下信息(感谢@KumarHarsh 将我引导到正确的方式!):

出了点问题,因为@query没有获得所有数据,我不知道如何解决这个问题。如果您能解决我的问题,我将不胜感激!

谢谢!

0 投票
2 回答
8650 浏览

sql-server-2008 - Row and column total in dynamic pivot

In SQL Server 2008, I have a table (tblStock) with 3 columns:

  • PartCode (NVARCHAR (50))
  • StockQty (INT)
  • Location (NVARCHAR(50))

some example data below:

How to create procedure to get the result as below?

Your help is much appreciated, thanks.

0 投票
1 回答
967 浏览

sql-server-2008-r2 - SQL Server 2008 中针对动态列的算术运算符

我有查询要在下面创建表和结果:

并得到以下结果:

上面的查询基于#tblPartCondition 中的已知列,请。知道列是否未知吗?(例如,如果用户添加新的 PercentageCode、PercentagePrice)。我会很感激你的宝贵时间和分享。谢谢!