默认计划
(1人评价)
【2015版】ORACLE数据库入门到精通 【极限IT 第1课】

亲临培训现场

价格 免费
该课程属于 0元参加 Java+ORACLE+HTML 【0计划】学习班
请加入后再学习

where左右连接标志:

"(+)" 标记只是Oracle才有的。

 

SQL:1999语法支持:

Select [distinct] * | 列 [别名]

From 表名称1

[CROSS JOIN 表名称2]

[NATURAL JOIN 表名称2]

[JOIN 表名称 ON(条件) | USING(字段)]

[LEFT | RIGHT | FULL OUTER JOIN 表名称2]

[展开全文]

切换用户:

在Oracle 数据库里面存在有sh用户。
conn sh/sh;

 

select count(*) from costs;

select  count(*) from sales;

 

[展开全文]

Oracle通用函数:

1、数字 NVL(列|null,默认值)

       如果传入的内容是null,则使用默认数值处理,如果不是空,则使用原始数值处理。

 

2、数据类型 decode

DECODE(列 | 字符串 | 数值,比较内容1,显示内容1,比较内容2,显示内容2,....【 ,默认显示内容】 )

       设置的内容会与每一个比较内容进行比较,如果内容相同,则会使用显示内容进行输出,如果都不相同,则使用最后的默认信息输出。

[展开全文]

1、from  确定数据来源。

2、where 确定满足条件的数据行。

3、select 控制要显示的数据列。

 

 

不等于符号:!= ;<>.

 

多条件运算符:

与连接:所有的条件都满足。

或连接:有一个条件满足即可。

非运算:NOT 真变假、假变真。

--and

select *

from emp

where sal>=1500 and sal<=3000;

 

空判断:

空在数据库上解析为不确定的内容。

--in

在指定值的操作中,in的操作是最简短的。

--not in

不在指定范围中,用not in 。

 

--like:

“ _”:匹配任意的以为字符。

“%”:匹配任意的零位、一位或多位字符。

 

 

 

 

[展开全文]

select * from emp;

show user;

打开:sqlplus

select子句控制数据列。

select DISTINCT  job from emp;

“||”负责进行输出的内容链接

 

[展开全文]

Like '%A%' %:表任意字元

'_A' 表第二字元為a

[展开全文]
loux · 2018-10-15 · SQL限定查询 0

逻辑条件要简单,不要过于复杂

[展开全文]

现在大量使用的是Oracle9i版本;

新项目大部分使用Oracle11g,是Oracle10g的稳定版本;

 

[展开全文]
leigq · 2018-08-09 · Oracle简介 0

SELECT [DISTINCT]  * | 列名称[别名] FROM 表名称

(先FROM 确实数据来源,再SELECT 确定查询列内容 )

 

 

[展开全文]

SQL语法分为三种类型:

     1、DML(数据操作语言):主要是数据的查询和更新操作。  

     2、DDL(数据的定义语言):主要查数据对象的创建(表,用户)。

     3、DCL(数据的控制语言):主要是进行权限的管理操作(需要结合用户来观察)。

 

SCOTT用户表的结构。

      一、SCOTT用户一共有四张数据表。

          1)SELECT * FROM tab  个用户下的所有数据表

         2)DESC 表名称  查询一个表的结构

      1、DESC dept(部门信息表:dept)

  • DEPTNO 表示部门编号
  • DNAME  表示部门名称
  • LOC        表示部门位置

      2、雇员信息表:emp

  • EMPNO  雇员编号
  • ENMAE   雇员名称
  • JOB         雇员职位
  • MGR       每个雇员的领导的编号
  • HIERDATE  雇佣日期
  • SAL         基本工资(7,2)
  • COMM    佣金,(7,2)
  • DEPTNO   部门编号

(COL 列名 FOR A10,所选列名在行中占10个字符)

       3、工资等级表:salgrade

  • GRADE    工资等级编号
  • LOSAL     最低工资
  • HISAL      最高工资

       4、工资表:bonus   (这是四张表中唯 一没有数据的表)

  • ENAME   雇员姓名
  • JOB         职位
  • SAL         基本工资
  • COMM    佣金

 

 

 

[展开全文]

1、运行--sqlpus--scott/tiger(密码不显示)

   or      cmd-- sqlpus scott/tiger (明文)

2、SELECT * FROM EMP

     SET LINESIZE 300 设备每行显示的数据长度

     SET PAGESIZE 30 设备每面显示的数据行数

     这两个称为格式化指令。

3、sqlpus里输入ed mldn 即为创建一个名为mldn的后辍为.sql的记事本,但必须要关闭才能继续操作。要想执行文件中的命令,使用@文件名称,如@mldn

4、CONN 用户名/密码【AS SYSDBA】

     如果要用sys用户名,必须加个AS SYSDBA

     如果无法显示一个存在的表,可能是因为用户名的不同,可用 用户名.表名称 操作,如select * from scott.emp

5、如果要调用本机命令,可在原命令前加上HOST,如 HOST ECHO HELLO WORLD

[展开全文]

SQL:1999中定义了外连接。

 

[展开全文]

事物处理(commit,rollback)只发生在更新(update delete)里面——DDL不支持事物处理

commit之后更新的内容才完成

rollback:回滚,操作错误时,可以进行恢复

提交了以后就无法恢复数据

session(会话)

 

死锁

如果sessionA和sessionB发出同一操作

如果第一个session执行commit后第二个session才能完成操作

 

[展开全文]

INSERT INTO 表名称(列|列)

values();

 

更新——修改数据

UPDATE 表名称 

SET 字段1=值1

WHERE...

UPDATE myemp
SET sal=30000,comm=990
WHERE ename='SCOTT';


update myemp set sal=sal*1.2
where sal<(
SELECT AVG(sal)
FROM emp);

将所有雇员的信息变为当前日期
UPDATE myemp SET hirdate=SYSDATE;
 

 

[展开全文]

咧出薪金比“SMITH”或“ALLEN”多的所有员工的编号、姓名、部门名称、其领导姓名,部门人数。平均工资

1.select sal from emp where ename IN('SMITH,‘ALLEN’);

 

2.select e.empno,e,ename,e.sal

from emp e

where e.sal>ANY(

    select sal from emp where ename IN('SMITH,‘ALLEN’));

 

3.select e.empno,e,ename,e.sal

from emp e

where e.sal>ANY(

    select sal from emp where ename IN('SMITH,‘ALLEN’))

AND e.ename NOT IN('SMITH,‘ALLEN’);

 

4.找到领导信息

select e.empno,e,ename,e.sal,m.ename

from emp e,emp m

where e.sal>ANY(

    select sal from emp where ename IN('SMITH,‘ALLEN’))

AND e.ename NOT IN('SMITH,‘ALLEN’)

AND e.mgr=m.empno(+);

 

5.统计部门的信息,在from字句中完成

select e.empno,e,ename,e.sal,m.ename,temp.count,temp.avg,temp.max,temp.min,d.dname

from emp e,emp m,(

 select deptno dno,COUNT(empno) count,AVG(sal) avg,MAX(sal) max,MIn(sal) min

 from emp

 group by(deptno) temp,dept d

where e.sal>ANY(

    select sal from emp where ename IN('SMITH,‘ALLEN’))

AND e.ename NOT IN('SMITH,‘ALLEN’)

AND e.mgr=m.empno(+)

AND tept.dno=d.dedeptno

AND e.deptno=d.deptno;

 

 

 

SELECT deptno dno,COUNT(empno) count
    FROM emp
    GROUP BY deptno;

group by:防止重复

SELECT deptno dno FROM emp;
[展开全文]

查询出高于公司平均工资的职位名称、职位人数、平均工资

select AVG(sal)

from emp;

 

select job,COUNT(empno),AVG(sal)

from emp

GROUP BY job

HAVING AVG(sal)>(

select AVG(sal)

from emp);

 

2.查询出每个部门名称、位置、部门人数

SELECT d.dname,d.loc,COUNT(e..empno)

FROM emp e,dept d

WHERE d.deptno(+)=e.empno

GROUP BY d.dname,d.loc;

 

第二种方式:子查询(在from中使用)

SELECT d.dname,d.loc,temp.count

FROM dept d,(

     SELECT deptno,COUNT(empno) count

     FROM emp

     GROUP BY deptno) temp

WHERE d,dptno=temp.deptno(+)

有统计查询并在子查询中,需要给统计查询加一个别名

 

 

[展开全文]

授课教师

讲师

课程特色

视频(54)
文档(28)
图文(1)

学员动态

jayzhou 加入学习
ychsemail 加入学习
你像风一样离开 加入学习
ilovecup 加入学习
wanzi 加入学习