嗨,我有一个表测试,其结构如下:
**Testing**
PK C1 c2
---------------
1 v11 v12
2 v21 v23
3 v31 v32
现在,我需要查询该表(测试),以便获得以下输出。
Pk Key value
---------------
1 c1 v11
1 c1 v12
2 c2 v21
2 c2 v22
3 c3 v31
3 c3 v32
Oracle 11g中的sql查询是否可以实现?11g中的PIVOT功能是否可以实现?
不,它不能用来完成PIVOT
,但是 可以 用来完成**UN** PIVOT
:
SELECT
Pk,
"Key",
value
FROM Testing
UNPIVOT (
value FOR "Key" IN (C1, C2)
)
当UNPIVOT
不可用时,我通常会像这样取消透视:
SELECT
t.Pk,
x."Key",
CASE x."Key"
WHEN 'C1' THEN t.C1
WHEN 'C2' THEN t.C2
END AS value
FROM Testing t
CROSS JOIN (
SELECT 'C1' AS "Key" FROM DUAL UNION ALL
SELECT 'C2' FROM DUAL
) x
我试图在Python中声明一个动态列表,并对其进行各种操作,但在操作之后,它没有给出所需的输出。 当我像一样将列表声明为一般长度时,它工作得很好:
问题内容: 我有3个表,每个表由称为用户名的列组成。在注册部分,我需要检查所请求的用户名是否是新的和唯一的。 在继续之前,我需要一个SQL来告诉我该用户是否存在于任何这些表中。我试过了: 那是路要走吗? 问题答案:
问题内容: 我刚接触Oracle,想查找用户’john’创建的所有表。 我通过以下命令通过命令行连接到Oracle数据库: 如何列出给定用户(例如john)创建的所有表? 问题答案: 这将获得所有以“ JOHN”用户为所有者的表: 或者 ([TL; DR]通常需要使用大写。假设用户是使用该语句创建的,那么Oracle的默认行为是将所有对象名称(即表,列,用户等)都转换为大写。查询数据字典,在这种情
问题内容: 如何仅列出具有给定前缀()的数据库? 例: 输出: 预期产量: 奖金: 在我的情况下,可以在不定义new 的情况下创建数据库吗? 我的目标是仅在具有前缀的数据库上运行查询,所以可能存在比列出数据库更好的解决方案,然后在每个数据库上运行查询吗? 问题答案: 只需按表示数据库名称的属性进行过滤。要列出以给定前缀开头的数据库,可以使用regexp为: 其他过滤器选项在命令页面上列出: 您可以
问题内容: 在SQL Server中,是否有一条命令返回与给定表或视图有关系的所有表的列表? 编辑:SQL SERVER 2008 问题答案: 对于SQL Server 2005及更高版本,请使用类似以下内容的内容:
我正在寻找一个JavaScript表达式来计算一个月内所有给定数据点的平均值,即数据点中表示的所有月份的平均值。到目前为止,我只想为每个月硬编码新数组,并在其中添加12个条件,然后平均每个列表的值。但我觉得肯定有更干净更有效的方法。样本数据=(例如[YYYY,MM,DD,Value]): 前三个字段是日期(YYYY、MM、DD)。1-12月表示为0-11,最后一个字段是将被平均的值。 我希望从表达