oracle实现多行合并的方法
本文实例讲述了oracle实现多行合并的方法。分享给大家供大家参考。具体分析如下:
在写sql时,经常会有将某列的字段合并起来,比如将某人名下每个月的工资列示,但是每个人只能占一行。
像这种场景,可能用行列转换也能实现,但如果这个月份的信息不固定,就无法使用行列转换了。
oracle10g以后,提供了一个函数WMSYS.WM_CONCAT,能很轻松实现该功能。
select t.rank, WMSYS.WM_CONCAT(t.Name) TIME From t_menu_item t GROUP BY t.rank;
这样,看着就舒服多了。
这个方法没出来之前,可能还需要自己写一个函数,稍微麻烦些。
希望本文所述对大家的Oracle数据库程序设计有所帮助。
相关推荐
-
php连接oracle数据库及查询数据的方法
本文实例讲述了php连接oracle数据库及查询数据的方法.分享给大家供大家参考.具体分析如下: php有强大的功能不但可以支持mysql,mssql,mysqli之个我们还可以与oracle数据连接,要让php支持oracle非常的简单我们只要把php.ini中的;extention = php_oci8.dll分号去掉即可. php支持oracle连接函数 php.ini文件中的配置,去掉 ;extention = php_oci8.dll,去掉前面的分号,重启apache就可以了,如果不行
-
oracle—SQL技巧之(二)WMSYS.WM_CONCAT函数实现多行记录用逗号拼接在一起
需求: 目前接触BI系统,由于业务系统的交易记录有很多,常常有些主管需要看到所有的记录情况,但是又不想滚动,想一眼就可以看到所有的,于是就想到了字符串拼接的形式. 解决方案:使用Oracle自带的函数 WMSYS.WM_CONCAT,进行拼接. 函数限制:它的输出不能超过4000个字节. 为了不让SQL出错,又可以满足业务的需求,超过4000个字节的部分,使用"..." 实现SQL如下: 复制代码 代码如下: CREATE TABLE TMP_PRODUCT (PRODUCT_TYPE
-
oracle ORA-00988 missing or invalid password 错误
在设置数据库实例的密码时,注意不要以数字开头,否则您将会遇到 ORA-00988 missing or invalid password (口令缺失或无效) 错误. Oracle 10g 安装完成后,您可使用 dbca 命令创建新的数据库实例,或维护已有的数据库实例. 如果您安装的是 Oracle XE 数据库,则必须反安装 Oracle XE 后重新安装 Oracle XE,并在安装过程中指定非数字开头的密码 (例如 password 或 pswd123). ORA-00988: 口令缺失或无
-
oracle列合并的实现方法
很多场合我们都会用到oracle的列合并,oracle提供了如下一些方法用来实现列合并: 一.Oracle 10G以前使用WMSYS.WM_CONCAT: wmsys.wm_concat将字段的值用","来隔开. select id,wm_concat(name) from tab_name group by id; 二.使用sys_connect_by_path sys_connect_by_path(字段名, 2个字段之间的连接符号),这里的连接符号不要使用逗号,oracle会报错
-
Oracle 多行记录合并/连接/聚合字符串的几种方法
什么是合并多行字符串(连接字符串)呢,例如: SQL> desc test; Name Type Nullable Default Comments ------- ------------ -------- ------- -------- COUNTRY VARCHAR2(20) Y CITY VARCHAR2(20) Y SQL> select * from test; COUNTRY CITY -------------------- -------------------- 中国 台
-
oracle合并列的函数wm_concat的使用详解
oracle wm_concat(column)函数使我们经常会使用到的,下面就教您如何使用oracle wm_concat(column)函数实现字段合并,如果您对oracle wm_concat(column)函数使用方面感兴趣的话,不妨一看.shopping:-----------------------------------------u_id goods num------------------------------------------1
-
C#调用Oracle存储过程的方法
本文实例讲述了C#调用Oracle存储过程的方法.分享给大家供大家参考.具体实现方法如下: Oracle数据库代码如下: 复制代码 代码如下: create or replace procedure proce_test(paramin in varchar2,paramout out varchar2,paraminout in out varchar2) as varparam varchar2(28); begin varparam:=paramin; paramout:=va
-
修改oracle数据库用户名及密码的方法
改oracle数据库用户名称和密码(Linux为例),有需要的朋友可以参考下. 一.修改前准备工作: 使用ssh工具以root身份连接服务器, 然后切换到oracle用户:su - oracle(回车) 使用sqlplus连接数据库:sqlplus /nolog(回车) 以管理员身份登录sys用户:conn sys/sys as sysdba(回车) 数据库连接成功,至此准备工作完成. 二.修改用户名称. 数据库连接成功后,在SQL>提示后面继续输入: 首先查到到所需修改用户名称的用户需要:se
-
oracle 合并查询 事务 sql函数小知识学习
表查询: 合并查询:使用union关键字,可将满足条件的重复行去掉. 复制代码 代码如下: select ename,sal,job from emp where sal > 2500 union select ename,sal,job from emp where job = 'MANAGER'; 而union all用法和union相似,但是不会取消重复行. intersect 用来取两个结果的交集. minus用来取两个结果的差集. 使员工scott的岗位,工资,补助与SMITH员工一样
-
C#实现远程连接ORACLE数据库的方法
本文实例讲述了C#实现远程连接ORACLE数据库的方法.分享给大家供大家参考.具体分析如下: 使用该方法,只需要传入几个必要的参数就可以进行数据库的远程连接测试了,连接成功返回TRUE,失败返回false. 参数说明: 第一个参数表示你在数据库中的用户,具有可以登录权限的 第二个参数表示用户的密码,没有加密 第三个参数表示登录的服务器的地址 第四个参数表示登录的服务器的端口号 第五个参数表示登录的数据库的名字 一定记得必要的引用 复制代码 代码如下: /// <summary> /// 测试数
随机推荐
- SpringMVC简单整合Angular2的示例
- 在VMware上安装CentOS7(图文)
- 编程趣事:当下流行编程语言的”讨厌”程度排行榜
- SQL注入详解(扫盲篇)
- Prototype1.4手册
- jQuery.lazyload+masonry改良图片瀑布流代码
- 用vbs找到映射到共享的所有驱动器并重新映射它们
- 5种java排序算法汇总工具类
- PHP 地址栏信息的获取代码
- ThinkPHP上使用多说评论插件的方法
- Mysql索引会失效的几种情况分析
- MySQL 相关的环境变量
- css写菜单:简洁注释版
- JavaScript中判断整数的多种方法总结
- Sql Server 2016新功能之Row-Level Security(值得关注)
- android获取相册图片和路径的实现方法
- linux下用Proftpd搭建ftp服务器及配置方法
- 绿色版 mysql 安装配置
- DBA_Oracle Startup / Shutdown启动和关闭过程详解(概念)(对数据库进行各种维护操作)
- JQuery浮动DIV提示信息并自动隐藏的代码