设为首页 加入收藏

TOP

Oracle学习(2):过滤和排序(一)
2015-11-21 02:05:32 来源: 作者: 【 】 浏览:4
Tags:Oracle 学习 过滤 排序

Oracle的过滤与排序

where过滤语法

SQL> --查询10号部门的员工
SQL> select *
2 from emp
3 where deptno=10;


EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------- --------- ---------- -------------- ----- ---------- ----------
7782 CLARK MANAGER 7839 09-6月 -81 2450 10
7839 KING PRESIDENT 17-11月-81 5000 10
7934 MILLER CLERK 7782 23-1月 -82 1300 10


SQL> --查询名叫KING的员工
SQL> select *
2 from emp
3 where ename='KING';


EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------- --------- ---------- -------------- ----- ---------- ----------
7839 KING PRESIDENT 17-11月-81 5000 10


SQL> --查询17-11月-81入职的员工
SQL> select *
2 from emp
3 where hiredate='17-11月-81';


EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------- --------- ---------- -------------- ----- ---------- ----------
7839 KING PRESIDENT 17-11月-81 5000 10


字符串大小写敏感

SQL> select *
2 from emp
3 where ename='king;'
4 ;


未选定行 注意:若过滤字符串大小写不相符合,则无法查询出结果!



日期格式问题

SQL> --日期格式敏感
SQL> select *
2 from emp
3 where hiredate='17-11月-81'; (此为Oracle默认格式)


EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- -------- --------- ---------- -------------- ----- ---------- ----------
7839 KING PRESIDENT 17-11月-81 5000 10


SQL> ed
已写入 file afiedt.buf


1 select *
2 from emp
3* where hiredate='1981-11-17'
SQL> /
where hiredate='1981-11-17'
*
第 3 行出现错误:
ORA-01861: 文字与格式字符串不匹配 (若使用格式不相符合的日期格式,则无法查询出结果)




SQL> select sysdate from dual;


SYSDATE
--------------
25-3月 -12

查询参数设置得到默认的日期格式

SQL> --查询参数设置得到默认的日期格式
SQL> select *
2 from v$nls_parameters; (查询参数设置语句)

PARAMETER VALUE
---------------------------------------------------------------- ----------------------------------------------------------------
NLS_LANGUAGE SIMPLIFIED CHINESE
NLS_TERRITORY CHINA
NLS_CURRENCY ¥
NLS_ISO_CURRENCY CHINA
NLS_NUMERIC_CHARACTERS .,
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE SIMPLIFIED CHINESE
NLS_CHARACTERSET ZHS16GBK
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY ¥
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_COMP BINARY


PARAMETER VALUE
---------------------------------------------------------------- ----------------------------------------------------------------
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE


已选择19行。


更改会话中的默认日期格式(更改会话则恢复默认格式)

SQL> alter session set NLS_DATE_FORMAT='yyyy-mm-dd';


会话已更改。


SQL> select *
2 from v$nls_parameters;


PARAMETER VALUE
---------------------------------------------------------------- ----------------------------------------------------------------
NLS_LANGUAGE SIMPLIFIED CHINESE
NLS_TERRITORY CHINA
NLS_CURRENCY ¥
NLS_ISO_CURRENCY CHINA
NLS_NUMERIC_CHARACTERS .,
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT yyyy-mm-dd
NLS_DATE_LANGUAGE SIMPLIFIED CHINESE
NLS_CHARACTERSET ZHS16GBK
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY ¥
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_COMP BINARY


PARAMETER VALUE
---------------------------------------------------------------- ---------------------------------------------------
首页 上一页 1 2 3 4 5 6 7 下一页 尾页 1/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇MongoDB学习(3)高级操作 下一篇Oracle基础(三)数据库管理

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: