易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle多行记录合并/连接/聚合字符串的几种方法

什么是合并多行字符串(连接字符串)呢,例如:
SQL> desc test;
Name     Type          Nullable Default Comments
------- ------------ -------- ------- --------
COUNTRY VARCHAR2(20) Y                        
CITY     VARCHAR2(20) Y                        
SQL> select * from test;
COUNTRY               CITY
-------------------- --------------------
中国                  台北
中国                  香港
中国                  上海
日本                  东京
日本                  大阪
要求得到如下结果集:
-------     --------------------
中国        台北,香港,上海
日本        东京,大阪
   实际就是对字符实现一个聚合功能,我很奇怪为什么Oracle没有提供官方的聚合函数来实现它呢:)
   下面就对几种经常提及的解决方案进行分析(有一个评测标准最高★★★★★):
1.被集合字段范围小且固定型 灵活性★    性能★★★★ 难度 ★
   这种方法的原理在于你已经知道CITY字段的值有几种,且还不算太多,如果太多这个SQL就会相当的
长。。看例子:
SQL> select t.country,
   2   MAX(decode(t.city,'


相关文档:

Oracle如何执行批量sql语句

要创建两个文件
1: runBatch.bat
2: sql.txt
runBatch.bat 内容如下:
sqlplus username/password @sql.txt
pause
sql.txt内容如下:
spool sql.log
create table t1(cname char(20));
insert into t1(cname) values('test');
select * from t1;
spool off
exit
双击runBatch.bat就可以批量执行sql.txt中 ......

Oracle数据库8i、9i默认用户存在弱口令

为这些用户名设置足够强壮的口令或锁定无用的默认用户。
SQL语句修改:
连接至Oracle后使用如下命令修改口令:
alter user system(用户名) identified by manager(密码);
连接至Oracle后使用如下命令锁定账号:
alter user test(用户名) account lock;
 
图形窗口修改:
Oracle服务openview上的用户:SCOT ......

oracle常见语句

----本用户所拥有的系统权限:
select * from user_sys_privs;
---本用户读取其他用户对象的权限:
 select * from user_tab_privs;
-----添加权限
GRANT CREATE USER,DROP  USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY  VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE&nbs ......

Oracle段高水位(HWM, high water mark)问题

Oracle对表做全表扫描的时候
,会扫描完HWM以下
的数据块。如果某个表delete(delete操作不会降低高水位)了大量数据,那么这时对表做全表扫描就会做很多无用功,扫描了一大堆数据块,最后发现块里面居然没有数据。
通常,在对表做了大批量delete操作之后,就应该马上降低表的高水位,可以使用shrink 命令或者alter&n ......

oracle 10g客户端导出11g用户的完整数据

     为了做虚拟机,需要将服务器上的11g的用户的完整数据导出来。而虚拟机上的oracle10g的,直接导出来,无法导入到虚拟机。
所以,试着用10g的客户端来导出数据,
用命令:exp exoa/*****@exoa1 file=20100526.dmp grants=y full=y
执行后,系统提示:
  EXP-00008:遇到 ORACLE错误1406
&nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号