oracle怎么转换为列-Oracle

admin1年前 (2024-06-05)基础运维知识248
点击下载TXT

如何将 Oracle 数据转换成列

Oracle 数据库提供了一个名为 PIVOT 的函数,它可以将行数据转换为列数据。PIVOT 函数的语法如下:

PIVOT (
    agg_expr
    FOR col_name
    IN (value1, value2, ..., valueN)
    [PARTITION BY partition_col_name1, ..., partition_col_nameN]
)
登录后复制

示例:

将以下表中的行数据转换为列数据:

ID Name Sport
1 John Basketball
2 Mary Soccer
3 Bob Basketball
4 Jane Soccer
5 Tom Baseball

使用 PIVOT 函数将其转换为列数据:

SELECT ID,
       MAX(CASE WHEN Sport = 'Basketball' THEN Name END) AS Basketball,
       MAX(CASE WHEN Sport = 'Soccer' THEN Name END) AS Soccer,
       MAX(CASE WHEN Sport = 'Baseball' THEN Name END) AS Baseball
FROM (
    SELECT ID, Name, Sport
    FROM table_name
)
PIVOT (
    Name
    FOR Sport
    IN ('Basketball', 'Soccer', 'Baseball')
)
GROUP BY ID;
登录后复制

输出:

ID Basketball Soccer Baseball
1 John NULL NULL
2 NULL Mary NULL
3 Bob NULL NULL
4 NULL Jane NULL
5 NULL NULL Tom

相关文章

oracle怎么新建用户-Oracle

如何在 Oracle 中创建新用户 在 Oracle 中创建新用户是一个简单的过程,可以授予用户访问数据库和执行操作所需的权限。以下是如何新建用户的步骤: 步骤 1:连接到数据库 使用 Oracle...

oracle sql语句怎么执行-Oracle

如何执行 Oracle SQL 语句? 执行 Oracle SQL 语句涉及以下步骤: 1. 创建连接 首先,使用 DriverManager.getConnection() 方法建立与数据库的连接...

oracle怎么启动监听-Oracle

如何启动 Oracle 监听器 Oracle 监听器是一个守护进程,负责监听传入客户端连接请求,并将它们路由到相应的数据库实例。要启动 Oracle 监听器,请执行以下步骤: 1. 确定监听器状态...

oracle怎么卸载一个表-Oracle

如何卸载 Oracle 中的表 要卸载 Oracle 中的表,可以使用以下步骤: 1. 确认表名称 确定要卸载的表的名称。 2. 使用 DROP TABLE 语句 使用 DROP TABLE 语句卸...

oracle动态sql怎么创建-Oracle

如何使用Oracle创建动态SQL Oracle的动态SQL允许你根据运行时输入创建和执行SQL语句。这非常适合需要对用户输入做出响应或需要根据特定条件修改查询的应用程序。 创建动态SQL的步骤:...

oracle awr报告怎么看-Oracle

如何解读 Oracle AWR 报告 什么是 AWR 报告? AWR(自动工作负载存储库)报告是一个快照,显示数据库在特定时间段内的性能和活动。它捕获了有关数据库活动、资源消耗和性能问题的详细信息。...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。