今天开学Oralce 现在坚持每天写技术文档,也就是笔记了!!

来源:互联网 发布:同程网络2017校园招聘 编辑:程序博客网 时间:2024/04/29 15:55

第一天

Oracle 中的各种命令!

一,

sqlplus sys/sjy(密码) as sysdba 管理员登陆
alter user scott account unlock;  更改用户

desc (emp)对表的描述

二,
desc dual(空的意思) 可以计算各种表达式的表 如:select 2*3 from dual;
如 :select sysdate from dual;
select ename, sal*12 anual_sal from emp;(“anual_sal”其中不可以有空格小写会变大写,如果必须有空格就加双引号当然加了双引号小写不会变 大写)

注意:控制 和0 大不一样(任何含有空值表达式的值结果为空值!)


三,字符串连接符
select ename|| sal from emp;
select ename|| 'abcdef'from emp;
select ename|| 'sdfdsf''fds' from emp(如果一个字符串中有一个单引号那么就用两个单引号来代替一个单引号)


四,distinct (去掉重复的)
select distinct deptno from emp;去掉的deptno重复的
select distinct deptno ,job from emp;去掉的deptno和job重复的组合

                                    快捷键:(cl scr)清屏

五,where 过滤

SQL> select * from emp
  2  where deptno = 10;


where是过滤语句

六,表达式,

    SQL> select *from emp
             2  where ename ='CLARK';(字符串用‘’);

                不等于用<>表示
          SQL> select ename ,sal,deptno from emp
                   2  where deptno <>10;


              SQL> select ename ,sal from emp where ename<>'ABA';

           SQL> select ename sal from emp
                   2  where sal between 800 and 1500;
            和
          SQL> select ename ,sal from emp
                 2  where sal>=800 and sal<=1500;
                                                                                 是一样的结果,说明between是包括了两个端点

      空值表示
         SQL> select ename ,sal from emp
               2  where comm is(not) null;


           sal或者是800,或者是1500,或者是2000

           SQL> select ename,sal from emp
                 2  where sal in (800,1500,2000);

             SQL> select ename,sal,comm from emp
                       2  where ename in('SMITH','KING','ABC');

           SQL> select ename,sal from emp
                   2  where sal not in(800,1500);表示不在800--1500之间的数


九:日期的判断要注意月份的格式
              SQL> select ename,sal hiredate
               2  from emp where hiredate> '20-2月-1981';

 

             or和and的用法
               SQL> select ename,sal from emp
                              2  where deptno = 10 or sal>1000;


                SQL> select ename,sal from emp
                   2  where deptno = 10 and sal>1000;

 

十,转义字符

       %表示0个或者多个
                  SQL> select ename from emp
                           2  where ename like '%ALL%';                表示第二个数为A的字符串

                     SQL> select ename from emp
                        2  where ename like '_A%';
                                                                                        
                    SQL> select ename from emp
                            2  where ename like '%\%%'               转义字符 \ 该题表示 中间有%字符的字符串


                      SQL> select ename from emp
                                 2  where ename like '%$%%'escape '$';; 自己制定转移字符!

十一:数据的排序(默认是升序asc可以不写):
                              select * from dept order by deptno desc(降序);


                            SQL> select ename ,sal from emp
                                       2  where sal in(800,1500)
                                        3  order by sal asc;

 


                            SQL> select ename ,sal ,deptno from emp order by deptno asc,ename
                                       2  desc;                    首先是按照deptno排序,在按照 ename排序