[转载]Oracle数据库字符集问题解析1
原文地址:http://www.itpub.net/276524.html作者:jeffli73经常看到一些朋友问ORACLE字符集方面的问题,我想以迭代的方式来介绍一下。第一次迭代:掌握字符集方面的基本概念。 有些朋友可能会认为这是多此一举,但实际上正是由于对相关基本概念把握不清,才导致了诸多问题和疑问。首先是字符集的概念。我们知道,电子计算机最初是用来进行科学计算的(所以叫做“计算机”),但随着技术的发展,还需要计算机进行其它方面的应用处理。这就要求计算机不仅能处理数值,还能处理诸如文字、特殊符号等其它信息,而计算机本身能直接处理的只有数值
Google的21道面试题,答对者可获工作机会(中文版)
今年10月底,Google在美国《麻省技术评论》、《LinuxJournal》、《Mensa》、《今日物理》等几本专业杂志上刊登了一份“Google实验室能力倾向测试”的试卷,开头蛊惑地写着“试试看!把答案寄回Google,你有希望去Google总部参观,并成为我们其中一员”。有兴趣的人可以做完了邮寄给Google公司,也许会得到一个工作机会呢。 [@more@] 1、解答下面的隐藏等式,其中的M和E的值可以互换,但不允许第一位是0: WWWDOT - GOOGLE = DOTCOM 2、用一个俳句(一种日本短诗,每句有一个与季节有关的词)来建立模型,借此预测网络搜索流量
获得可用的最小正整数
假设表TTT中没有重复的数字,现在要获得其中最小的未被使用的正整数select nvl(max(n+1),1) minInt from (select n,n-row_number(order by n) cha from ttt) where cha=0[@more@]
[转载]上传下载全攻略jspSmartUpload
一、安装篇 jspSmartUpload是由www.jspsmart.com网站开发的一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。该组件有以下几个特点: 1、使用简单。在JSP文件中仅仅书写三五行JAVA代码就可以搞定文件的上传或下载,方便。 2、能全程控制上传。利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。 3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。 4、下载灵活。仅写两行代码,就能把
dynarch
http://www.dynarch.com做得真牛,非常漂亮[@more@]
显示每个班分数前的15%名的同学名单
create table a (class varchar2(8),student varchar2(100),score number(3))class 代表班,应该有一班,二班,三班...student学生score分数有多个班,每个班有多名同学现在想查询并显示每个班分数前的15%名的同学名单,请问该如何写查询语句[@more@]select class,student,score from(select class,student,score,rank()over(partition by class order by score desc)/count(*)over(partition by class) ratiofrom a)where ratio<=0.15
在校学生的入学年份
以8月为界,例如2005年8月1日,之前的在校学生入学年份为2001~2004,之后的为2002~2005[@more@]select to_char(add_months(sysdate,4),'yyyy')-rownum from all_objects where rownum<5;
产生一个32位的16进制随机数
1、SELECT SYS_GUID() FROM DUAL;2、select replace(s,'/','') s from (select s,rank()over(order by length(s) desc) rk from(select (sys_connect_by_path(a,'/')) s from (select decode(floor(dbms_random.value*16),0,'0',1,'1',2,'2',3,'3', 4,'4',5,'5',6,'6',7,'7',8,'8',9,'9', 10,'A',11,'B',12,'C',13,'D',14,'E',15,'F') a,rownum rn from all_objectswhere rownum<=32) connect by rn-1=prior rn) )where rk=1[@more@]
http://www.itpub.net/105327.html
http://www.itpub.net/105327.html[@more@]待整理
从字符串中提取数字
问题的提出有一個字符串﹐類似AAAAA123.456A(AA)A﹐如何用一句SQL將123.456提出來?A指的是不同的漢字,咋辦?[@more@]解决方法:如果是字符就好办,select TRIM(TRanslate('AAAAA123.456A(AA)A','A()',' ')) from dualA()处替换为除数字外的所有字符即可如果含有汉字,hmxxyy提供如下方法俺来挑战一下SQL, 带汉字的. 但愿能引出玉来(9iR2)SQL> 1 select result2 from3 (4 select level, replace(sys_connect_by_path(x, '/'), '/') result5 from6 (select rownum lvl, x from (select level lvl, substr('木炭abcd1234.34ef火锅gh', lev
Blog排名
[@more@]
关于分组后字段拼接的问题[行列转换]『By duanzilin』
最近在论坛上,经常会看到关于分组后字段拼接的问题,大概是类似下列的情形:SQL> select no,q from test2 /NO Q---------- ------------------------------001 n1001 n2001 n3001 n4001 n5002 m1003 t1003 t2003 t3003 t4003 t5003 t612 rows selected最后要得到类似于如下的结果:001 n1;n2;n3;n4;n5002 m1003 t1;t2;t3;t4;t5;t6[@more@]通常大家都认为这类问题无法用一句SQL解决,本来我也这么认为,可是今天无意中突然有了灵感,原来是可以这么做的:前几天有人提到过sys_connect_by_path的用法,我想这里是不是也能用到这个方法,
sqlplus的小秘密4『By oldwain』
这个也许不算什么秘密, 很多人大概都知道, 不过用过的人也许不多.在8.1.7版本(也许是816? 不太确定)以后, sql*plus中有一个set markup html的命令, 可以将sql*plus的输出以html格式展现.[@more@]scott@O9I.US.ORACLE.COM> set markup html on spool on">scott@O9I.US.ORACLE.COM> select empno, ename from emp where rownum<3;<br><p><table border='1' width='90%' align='center' summary='Script output'><tr><th scope="col">EMPNO</th><th scope="col&
sqlplus的小秘密3『By oldwain』
有没有过这样的经历? 在sql*plus中敲了很长的命令后, 突然发现想不起某个列的名字了, 如果取消当前的命令,待查询后再重敲, 那太痛苦了. 当然你可以另开一个sql*plus窗口进行查询, 但这里提供的方法更简单.[@more@]比如说, 你想查工资大于4000的员工的信息, 输入了下面的语句:scott@O9I.US.ORACLE.COM> select deptno, 2 empno, 3 ename 4 from emp 5 where这时, 你发现你想不起来工资的列名是什么了.这种情况下, 只要在下一行以#开头, 就可以执行一条sql*plus命令, 执行完后, 刚才的语句可以继续输入 scott@O9I.US.ORA
sqlplus的小秘密2『By oldwain』
Sql*plus中, 不允许sql语句中间有空行, 这在从其它地方拷贝脚本到sql*plus中执行时很麻烦. 比如下面的脚本:[@more@]select deptno, empno, ename from emp where empno = '7788';如果拷贝到sql*plus中执行, 就会出现错误:scott@O9I.US.ORACLE.COM> select deptno, empno, ename 2 from emp 3 scott@O9I.US.ORACLE.COM> where empno = '7788'; SP2-0734: unknown command beginning "where empn..." - rest of line ignored. scott@O9I.US.ORACLE.COM> 原因是sqlplus遇到空行就认为是语句结束了.其实要改
20 Differences Between Oracle on NT and Oracle on Unix
1. AVAILABILITYWindows NT has been existence since 1993. It runs on two processorarchitectures: Intel X86 (needs Pentium) and Digital Alpha AXP.The Windows NT operating system is only available from Microsoft.UNIX has been in existence since 1972: previous versions did exist,but they were written in PDP assembly language, rather than C. UNIXruns on most hardware architectures and versions are supplied by many vendors, most notably Sun, HP, IBM, Digital, Sequent, DataGeneral, NCR and SCO.[@more@]
sqlplus的小秘密1『By oldwain』
有没有为了dbms_output.put_line会"吃掉"最前面的空格而苦恼?[@more@]scott@O9I.US.ORACLE.COM> set serveroutput on scott@O9I.US.ORACLE.COM> exec dbms_output.put_line(' abc'); abc PL/SQL procedure successfully completed.(俺以前曾经很苦恼为了保留空格, 尝试了加".", 加不可见字符等办法, 不过终究觉得不自然)实际上, 只要在set serveroutput on后加上format wrapped参数, 就可以避免这个问题scott@O9I.US.ORACLE.COM> set serveroutput on format wrapped scott@O9I.US.ORACLE.COM> e
sql load的一点小总结
sqlldr userid=lgone/tiger control=a.ctl LOAD DATA INFILE 't.dat' // 要导入的文件 // INFILE 'tt.date' // 导入多个文件 // INFILE * // 要导入的内容就在control文件里 下面的BEGINDATA后面就是导入的内容 INTO TABLE table_name // 指定装入的表 BADFILE 'c:bad.txt' // 指定坏文件地址 ************* 以下是4种装入表的方式 APPEND // 原先的表有数据 就加在后面 // INSERT // 装载空表 如果原先的表有数据 sqlloader会停止 默认值 // REPLACE // 原先的表有数据 原先的数据会全部删除 // TRUNCATE // 指定的内容和
SQL*PLUS命令的使用大全
Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql*plus语句。 我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。 除了sql*plus语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示
35岁前成功的12条黄金法则
没有人能随随便便成功1、小不是成功,大不是成功,由小变大才是成功2、中国社会进入微利时代:巧干+敢干+实干=成功3、努力尝试就有成功的可能4、做任何事情,尽最大努力5、把事情当成事业来做6、我看打工者7、祝你早日掘到第一桶金[@more@]第一章:一个目标一艘没有航行目标的船,任何方向的风都是逆风1、你为什么是穷人,第一点就是你没有立下成为富人的目标2、你的人生核心目标是什么?杰出人士与平庸之辈的根本差别并不是天赋、机遇,而在于有无目标。3、起跑领先一步,人生领先一大步:成功从选定目标开始4、贾金斯式的人永远不会成功为