1. 如何得到字符串的第一个字符的ASCII值?
ASCII(CHAR)
SELECT ASCII('ABCDE') FROM DUAL;
结果: 65
2. 如何得到数值N指定的字符?
CHR(N)
SELECT CHR(68) FROM DUAL;
结果: D
3. 如何连接两个字符串?
CONCAT(CHAR1,CHAR2)
SELECT CONCAT('ABC','DEFGH') FROM DUAL;
结果: 'ABCDEFGH'
4. 如何将列中的数值代替为字符串?
DECODE(CHAR,N1,CHAR1,N2,CHAR2...)
SELECT DECODE(DAY,1,'SUN',2,'MON') FROM DUAL;
5. INITCAP(CHAR)
将字符串CHAR的第一个字符为大写,其余为小写.
SELECT INITCAP('ABCDE') FROM DUAL;
6. LENGTH(CHAR)
取一字符串CHAR的长度.
SELECT LENGTH('ABCDE') FROM DUAL;
7. LOWER(CHAR)
将字符串CHAR全部变为小写.
SELECT LOWER('ABCDE') FROM DUAL;
8. LPAD(CHAR1,N,CHAR2)
用字符串CHAR2包括的字符左填CHAR1,使其长度为N.
SELECT LPAD('ABCDEFG',10'123') FROM DUAL;
结果: '123ABCDEFG'
9. LTRIM(CHAR,SET)
从字符串CHAR的左边移去字符串SET中的字符,直到第一个不是
SET中的字符为止.
SELECT ('CDEFG','CD') FROM DUAL;
结果: 'EFG'
10. NLS_INITCAP(CHAR)
取字符CHAR的第一个字符大写,其余字符为小写.
SELECT NLS_INITCAP('ABCDE') FROM DUAL;
11. NLS_LOWER(CHAR)
将字符串CHAR包括的字符全部小写.
SELECT NLS_LOWER('AAAA') FROM DUAL;
12. NLS_UPPER(CHAR)
将字符串CHAR包括的字符全部大写.
SELECT NLS_UPPER('AAAA') FROM DUAL;
13. REPLACE(CHAR1,CHAR2,CHAR3)
用字符串CHAR3代替每一个列值为CHAR2的列,其结果放在CHAR1
中.
SELECT REPLACE(EMP_NO,'123','456') FROM DUAL;
14. RPAD(CHAR1,N,CHAR2)
用字符串CHAR2右填字符串CHAR1,使其长度为N.
SELECT RPAD('234',8,'0') FROM DUAL;
15. RTRIM(CHAR,SET)
移去字符串CHAR右边的字符串SET中的字符,直到最后一个不是
SET中的字符为止.
SELECT RTRIM('ABCDE','DE') FROM DUAL;
16. SUBSTR(CHAR,M,N)
得到字符串CHAR从M处开始的N个字符. 双字节字符,一个汉字为一
个字符的.
SELECT SUBSTR('ABCDE',2,3) FROM DUAL;
17. SUBSTRB(CHAR,M,N)
得到字符串CHAR从M处开始的N个字符. 双字节字符,一个汉字为二
个字符的.
SELECT SUBSTRB('ABCDE',2,3) FROM DUAL;
18. TRANSLATE(CHAR1,CHAR2,CHAR3)
将CHAR1中的CHAR2的部分用CHAR3代替.
SELECT TRANSLATE('ABCDEFGH','DE','MN') FROM DUAL;
19. UPPER(CHAR)
将字符串CHAR全部为大写.
20. ADD_MONTHS(D,N)
将N个月增加到D日期.
SELECT ADD_MONTHS(SYSDATE,5) FROM DUAL;
21. LAST_DAY(D)
得到包含D日期的月份的最后的一天的日期.
SELECT LAST_DAY(SYSDATE) FROM DUAL;
22. MONTH_BETWEEN(D1,D2)
得到两个日期之间的月数.
SELECT MONTH_BETWEEN(D1,D2) FROM DUAL;
23. NEXT_DAY(D,CHAR)
得到比日期D晚的由CHAR命名的第一个周日的日期.
SELECT NEXT_DAY(TO_DATE('2003/09/20'),'SATDAY')
FROM DUAL;
24. ROUNT(D,FMT)
得到按指定的模式FMT舍入到的最进的日期.
SELECT ROUNT('2003/09/20',MONTH) FROM DUAL;
25. SYSDATE
得到当前系统的日期和时间.
SELECT SYSDATE FROM DUAL;
26. TO_CHAR(D,FMT)
将日期D转换为FMT的字符串.
SELECT TO_CHAR(SYSDATE,'YYYY/MM/DD') FROM DUAL;
27. TO_DATE(CHAR,FMT)
将字符串CHAR按FMT的格式转换为日期.
SELECT TO_DATE('2003/09/20','YYYY/MM/DD') FROM
DUAL;
28. ABS(N)
得到N的绝对值.
SELECT ABS(6)
FROM DUAL;
29. CEIL(N)
得到大于或等于N的最大整数.
SELECT CEIL(5.6) FROM DUAL;
30. COS(N)
得到N的余弦值.
SELECT COS(1) FROM DUAL;
31. SIN(N)
得到N的正弦值.
SELECT SIN(1) FROM DUAL;
32. COSH(N)
得到N的双曲余弦值.
SELECT COSH(1) FROM DUAL;
33. EXP(N)
得到N的E的N次幂.
SELECT EXP(1) FROM DUAL;
34. FLOOR(N)
得到小于或等于N的最小整数.
SELECT FLOOR(5.6) FROM DUAL;
35. LN(N)
得到N的自然对数.
SELECT LN(1) FROM DUAL;
36. LOG(M,N)
得到以M为底N的对数.
SELECT LOG(2,8) FROM DUAL;
37. MOD(M,N)
得到M除以N的余数.
SELECT MOD(100,7) FROM DUAL;
38. POWER(M,N)
得到M的N幂.
SELECT POWER(4,3) FROM DUAL;
39. ROUND(N,M)
将N舍入到小数点后M位.
SELECT (78.87653,2) FROM DUAL;
40. SIGN(N)
当N<0时,得到1;
当N>0时,得到1;
当N=0时,得到0;
SELECT SIGN(99) FROM DUAL;
41. SINH(N)
得到N的双曲正弦值.
SELECT SINH(1) FROM DUAL;
42. SORT(N)
得到N的平方根,N>=0
SELECT SORT(9) FROM DUAL;
43. TAN(N)
得到N的正切值.
SELECT TAN(0) FROM DUAL;
44. TANH(N)
得到N的双曲正切值.
SELECT TANH(0) FROM DUAL;
45. TRUNC(N,M)
得到在M位截断的N的值.
SELECT TRUNC(7.7788,2) FROM DUAL;
46. COUNT()
计算满足条件的记录数.
SELECT COUNT(*) FROM TABLE1 WHERE COL1='AAA';
47. MAX()
对指定的列求最大值.
SELECT MAX(COL1) FROM TABLE1;
48. MIN()
对指定的列求最小值.
SELECT MIN(COL1) FROM TABLE1;
49. AVG()
对指定的列求平均值.
SELECT AVG(COL1) FROM TABLE1;
50. SUM()
计算列的和.
SELECT SUM(COL1) FROM DUAL;
51. TO_NUMBER(CHAR)
将字符转换为数值.
SELECT TO_NUMBER('999') FROM DUAL;
52. CHARTOROWID(CHAR)
将包含外部语法ROWID的CHAR或VARCHAR2数值转换为内部的二进
制语法,参数CHAR必须是包含外部语法的ROWID的18字符的字符
串.
SELECT NAME FROM BSEMPMS WHERE ROWID=CHARTOROWID
('AAAAfZAABAAACp8AAO');
NAME : LEIXUE
53. CONVERT(CHAR,DEST_CHAR_SET,SOURCE_CHAR_SET)
CONVERT将字符串CHAR中的字符从SOURCE_CHAR_SET标识的字
符集转换为由DEST_CHAR_SET标识的字符集
SELECT CONVERT('GroB','US7ASCII','WE8HP')
'CONVERSION' FROM PUBS;
CONVERSION: Gross
54. HEXTORAW(CHAR)
将包含十六进制的CHAR转换为一个RAW数值.
INSERT INTO BSEMPMS(RAW_COLUMN) SELECT HEXTORAW
('7D') FROM TEST;
55. RAWTOHEX(RAW)
将RAW数值转换为一个包含十六进制的CHAR值.
SELECT RAWTOHEX(RAW_COLUMN) 'CONVERSION' FROM
BSEMPMS;
CONVERSION: 7D
56. ROWIDTOCHAR(ROWID)
将一个ROWID数值转换为VARCHAR2数据类型.
SELECT ROWID FROM BSEMPMS WHERE ROWIDTOCHAR
(ROWID) LIKE '%BR1AAB%';
57. TO_MULTI_BYTE(CHAR)
将CHAR中的单字节转换为等价的多字节字符.
SELECT TO_MULTI_BYTE('ASFDFD') FROM TEST;
58. TO_SINGLE_BYTE(CHAR)
将CHAR中的多字节转换为等价的单字节字符.
SELECT TO_SINGLE_BYTE('ASFDFD') FROM TEST;
59. TRANSLATE USING(TEXT USING
{CHAR_CS|NCHAR_CS})
将文本TEXT按照指定的转换方式转换成数据库字符集和民族字符
集.
其中TEXT是待转换的.
USING CHAR_CS参数转换TEXT为数据库字符集,输出数据类型是
VARCHAR2.
USING NCHAR_CS参数转换TEXT为数据库字符集,输出数据类型是
NVARCHAR2.
CREATE TABLE TEST(CHAR_COL CHAR(20),NCHAR_COL
NCHAR(20));
INSERT INTO TEST VALUES('HI,N'BYE');
SELECT * FROM TEST;
60. DUMP
(EXPR,RETURN_FORMAT,START_POSITION,LENGTH)
返回一个包含数据类型代码,字节长度等内部表示信息的VARCHAR2
值.返回结果是当前数据库字符集,数据类型按照下面规定的内部数
据类型的编码作为一个数字进行返回:
代码 数据类型
0 VARCHAR2
1 NUMBER
8 LONG
12 DATE
23 RAW
24 LONG RAW
69 ROWID
96 CHAR
106 MSSLABEL
参数RETUEN_FORMAT指定按照下面的基数表示返回的数值.
RETURN_FORMAT RESULT
8 8进制
10 10进制
16 16进制
17 单字符表示
如果参数RETURN_FORMAT没有指定,则按十进制表示返回.
如果参数START_POSITION和LENGTH被指定,则从
START_POSITION开始的长为LENGTH的字节将被返回,缺省是返
回整数表示.
SELECT DUMP('ABC',1016) FROM TEST;
select dump(ename,8,3,2) 'example' from emp where
name='ccbzzp';
61. empty_b|clob()
返回一个空的LOB定位符,用在初始化LOB变量,或用在INSERT及
UPDATE声明去初始化LOB列或将其属性置为空.
INSERT INTO TABLE1 VALUES(EMPTY_BLOB());
UPDATE TABLE1 SET CLOB_COL=EMPTY_BLOB();
62. BFILENAME('DIRECTORY','FILENAME')
返回一个BFILE定位符,相关的二进制LOB物理文件在服务器的文件
系统上.目录DIRECTORY是指在服务器的文件系统上实际搜索路径
全名的别名. FILENAME是指服务器的文件系统的文件名.
INSERT INTO FILE_TAB VALUES(BFILENAME
('LOB_DIR','IMAGE1.GIF'));
63. GREATEST(EXPR,EXPR,...)
GREATEST返回参数的最大值.
SELECT GREATEST('HARRY','HARRIOT','HAROLD')
'SAMPLE' FROM TABLE1;
64. LEAST(EXPR,EXPR,...)
LEAST返回参数的最小值.
SELECT LEAST('HARRY','HARRIOT','HAROLD') 'SAMPLE'
FROM TABLE1;
65. NLS_CHARSET_DECL_LEN(BYTECNT,CSID)
返回一个NCHAR列的宽度.
SELECT NLS_CHARSET_DECL_LEN(200,NLS_CHARSET_ID
('JA16EEFDFDF')) FROM TABLE1;
66. NLS_CHARSET_ID(TEXT)
返回相应于NLS字符集名字的NLS字符集ID数.
SELECT NLS_CHARSET_D('JADFDFFDF') FROM TABLE1;
67. NLS_CHARSET_NAME(N)
返回相应于ID数N的NLS字符集名称.
SELECT NLS_CHARSET_NAME(2) FROM TABLE1;
68. NVL(EXPR1,EXPR2)
若EXPR1是NULL,则返回EXPR2,否则返回EXPR1.
SELECT NAME,NVL(TO_CHAR(COMM),'NOT APPLICATION')
FROM TABLE1;
69. UID
返回唯一标识当前数据库用户的整数.
SELECT UID FROM TABLE1;
70. USER
用VARCHAR2数据类型返回当前ORACLE用户的名称.
SELECT USER,UID FROM TABLE1;
71. USERENV(OPTION)
返回当前的会话信息.
OPTION='ISDBA'若当前是DBA角色,则为TRUE,否则FALSE.
OPTION='LANGUAGE'返回数据库的字符集.
OPTION='SESSIONID'为当前会话标识符.
OPTION='ENTRYID'返回可审计的会话标识符.
OPTION='LANG'返回会话语言名称的ISO简记.
OPTION='INSTANCE'返回当前的实例.
SELECT USERENV('LANGUAGE') FROM DUAL;
72. VSIZE(EXPR)
返回EXPR内部表示的字节数.
SELECT NAME,VSIZE(NAME) FROM TABLE1;|
73. DEREF(E)
返回参数E的对象引用.
SELECT DEREF(C2) FROM TABLE1;
74. REFTOHEX(R)
将参数R转换为16进制.
SELECT REFTOHEX(C2) FROM TABLE1;
75. MAKE_REF(TABLE,KEY,KEY...)
通过把给定的键作为主键来创建给定视图对象中一行的引用.
CREATE TYPE T1 AS OBJECT(A NUMBER,B NUMBER);
CREATE TABLE TB1(C1 NUMBER,C2 NUMBER,PRIMARY KEY
(C1,C2));
CREATE VIEW V1 OF T1 WITH OBJECT OID(A,B) AS
SELECT * FROM TB1;
SELECT MAKE_REF(V1,1,3) FROM PUBS;
76. STDDEV(DISTINCT|ALL X)
STDDEV给出一组行值的标准差.
SELECT STDDEV(SALARY) AS EXAMPLE FROM EMPLOYEE;
77. VARIANCE(DISTINCT|ALL X)
VARIANCE返回一组行中所有VALUE的方差.
SELECT VARIANCE(SALARY) AS EXAMPLE FROM EMPLOYEE;
转自 http://tb.blog.csdn.net/TrackBack.aspx?
PostId=193926 作者xinqing6888
分享到:
相关推荐
"Oracle常用傻瓜问题1000问"显然是一部针对初学者和中级用户设计的指南,涵盖了日常工作中可能遇到的各种常见问题。在这个文档中,我们可以预见到一系列关于安装、配置、管理、查询优化以及故障排查的问答。 1. **...
本文将针对《Oracle常用傻瓜问题1000问》中的部分关键问题进行解答,以帮助初学者更好地理解和掌握Oracle的基本操作。 1. **Oracle初始口令**: - Oracle安装完成后,几个默认的管理员账户及口令包括:`internal/...
以下是一些基于Oracle的经典问答,涵盖了数据库的安装、管理、性能优化、安全性等多个方面: 1. **Oracle的初始口令**:在安装完成后,Oracle通常会设置一个默认的系统管理员用户(如SYS和SYSTEM),初始口令在安装...
3. 列举五个常用的集合函数:max、min、sum、avg、count 4. round 与 trunc 在处理数字方面的区别:round 返回四舍五入后的值,而trunc 返回截取后的值,不进行四舍五入。 5. union 与 union all 的区别:都是用来将...
下面将详细阐述一些Oracle数据库的基础知识和常用命令。 1. **Oracle数据库基础** - 数据库概念:Oracle数据库是一种存储和管理数据的系统,它提供数据的组织、安全、备份和恢复等功能。 - 表结构:数据库中的...
"Oracle常用傻瓜问题1000问.txt"文档很可能是针对这些常见问题的问答集,对于初学者和经验丰富的DBA来说都是宝贵的参考资料。通过学习和实践,我们可以逐步掌握Oracle数据库的管理和维护,解决遇到的各种问题。
以上知识点涵盖了ORACLE数据库的基本概念、数据备份与恢复、常用SQL函数、数据表的连接方式以及SQL语句的编写等方面的内容。希望这些知识点能够帮助读者更好地理解和掌握ORACLE数据库及SQL语言的相关知识。
### 数据库与Linux Oracle 常用操作指令详解 #### 一、SQL 语句基础 - **Insert、Update、Delete、Select 语句** - **Insert**: 用于向表中插入新记录。 ```sql INSERT INTO 表名 (列1, 列2, 列3,...) VALUES ...
Oracle数据库是最常用的数据库系统之一,对SQL语言的理解和掌握是进行数据库操作的基础。SQL中的增删改查(INSERT、DELETE、UPDATE、SELECT)是核心操作,用于管理数据库中的数据。其中,INSERT用于插入新数据,...
在复习题库中,应包含各种类型的问题,如选择题测试基础概念,填空题检验SQL语法,问答题考察设计和管理能力,以及案例分析题评估解决实际问题的能力。通过这样的题库,可以全面检验和提升对数据库的理解和应用能力...
理解类的构造函数、析构函数,以及如何使用接口和抽象类来实现多态性至关重要。 3. **异常处理**:Java通过try-catch-finally语句块进行异常处理,有助于编写健壮的代码。 4. **集合框架**:List、Set、Queue和Map...
数据库管理系统是一种软件,如Oracle、SQL Server、MySQL和Access,它们按照特定的数据模型来管理和操作数据,形成数据库。数据库系统则包括数据、数据库、DBMS以及相关的应用程序、硬件和软件平台以及相关人员。 ...
在用户输入SQL语句时,它能实时提供可能的关键词、表名、字段名和函数,极大地减少了手动查找和输入的时间。此外,它还能自动完成代码,根据已输入的部分自动补全剩下的语句,降低了由于拼写错误导致的错误率。 二...
在IT行业中,Java和Swing是开发桌面应用的常用组合,尤其在构建用户界面时。本项目主题“java+Swing 基于大模型的AI工具设计与使用”聚焦于利用这两种技术来创建一个人工智能(AI)辅助工具。这涉及到深度学习、自然...
- **库函数**:预定义的函数集合,提供了常用功能的实现,简化编程工作。 #### 三、使用Visual C++ 2010进行开发 - **创建新项目**: - 在VS2010中,可以通过菜单或工具栏快速创建C++项目,如控制台应用程序、GUI...
J2EE(Java 2 Enterprise Edition)是Sun Microsystems公司(现已被Oracle收购)为简化企业级应用开发而设计的一套标准和规范,其核心是利用Java平台构建可扩展、高性能、健壮的企业级应用。对于希望在IT领域,尤其...
- Oracle数据库操作能力 - Linux基本命令掌握程度 - 软件测试基础知识(特别是功能测试) **面试题目解析:** 1. **SQL查询**:查询用户表中重复的用户名及其重复次数。 - **解答思路**:可以使用`GROUP BY`结合`...
43、说出一些常用的类,包,接口,请各举5 个。 12 44、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类?是否可以implements(实现)interface(接口)? 12 45、内部类可以引用他包含类的成员吗?有...
下面我们将深入探讨PHP的核心概念、应用领域、主要特性以及一些常用的参考资料和学习资源。 PHP最初由Rasmus Lerdorf于1995年创建,后来发展成为一个功能强大的编程工具,支持多种数据库系统,如MySQL、PostgreSQL...
##### JDK常用的包 - **java.lang**:包含所有编程必需的基础类,如String、Math等。 - **java.util**:提供了大量实用工具类,如集合框架(List、Map等)、日期操作等。 - **java.io**:提供用于输入/输出的类,如...