oracle练习前期准备登陆scott用户(默认密码tiger),开始一般提示用户已锁。解决办法:登陆sys或system用户解锁输入命令alter user scott account unlock;然后登陆scott用户,可能回让你修改密码,修改成功后就可以成功登陆了。现在我们把SQL修改称我们想要的名字。set sqlprompt "_user‘@‘你修改的名字>";原文:https://www.cnblogs.com/zhangyazhou/p/9690369.html
--打印输出从1到10的正整数DECLARE v_i NUMBER(10) := 0;BEGIN LOOP v_i := v_i + 1; DBMS_OUTPUT.put_line(v_i); EXIT WHEN v_i=10; --或者v_i>9; END LOOP;END;--打印输出从1到10之间的偶数DECLARE v_i NUMBER(10) := 0;BEGIN LOOP v_i := v_i + 1; IF v_i MOD 2 = 0 THEN DBMS_OUTPUT.put_line(v_i); ...
--日期转换为字符串SELECT DATE_HIRE, TO_CHAR(DATE_HIRE, ‘Month dd yyyy‘) HIRE FROM EMPLOYEE_PAY_TBL;SELECT EMPLOYEE_TBL.EMP_ID, EMPLOYEE_TBL.LAST_NAME, EMPLOYEE_PAY_TBL.POSITION FROM EMPLOYEE_TBL, EMPLOYEE_PAY_TBL WHERE EMPLOYEE_TBL.EMP_ID = EMPLOYEE_PAY_TBL.EMP_ID;SELECT E.EMP_ID,EP.SALARY,EP.DATE_HIRE,E.LAST_NAMEFROM EMPLOYEE_TBL E,EMPLOYEE_PAY_TBL EPWHERE E.EMP_ID = EP.EMP_IDAND ...
编写简单的查询语句1.显示部门表的所有信息Select * from dept;2.显示部门号码,部门名称Selectdeptno,dname from dept;3.显示下面字段及字符串的连接:员工名 。" 1个月的工资为: " ,工资 。如:Amy 1个月的工资为:8000Select ename||’一个月的工资为:’|| sal fromemp;4.显示员工姓名,參加工作时间,工作Selectename,hiredate,job from emp;5.显示员工姓名:别名为Name,年薪(13个月的月薪):别名为annual salary。 ...
替换变量与绑定变量:SQL> define x=‘abc‘ --定义变量SQL> define xDEFINE X = "abc" (CHAR)SQL> select ‘&x‘ from dual;--查询替换变量值old 1: select ‘&x‘ from dualnew 1: select ‘abc‘ from dual‘AB---abcSQL> variable x varchar2(10) --声明变量SQL> begin 2 :x :=‘hello‘; 3 end; 4 /PL/SQL procedure successfully completed.SQL> print :x ...
非常经典的一些日常醒脑练习内容!! 如有更高效的写法欢迎赐教! 11.已知Oracle的Scott用户中提供了三个测试数据库表,名称分别为dept,emp和salgrade。使用SQL语言完成以下操作21)试用SQL语言完成下列查询(单表查询):3a)查询20号部门的所有员工信息:4select * from emp e where e.deptno=20; 5b)查询奖金(COMM)高于工资(SAL)的员工信息:6select * from emp where co...
--****************基本查询****************
--查询所有员工的姓--消除重复的姓--创建一个查询,以显示employees表中的唯一职务代码--创建一个查询,使其显示每位员工的姓氏、职务代码、聘用日期和员工编号,并且首先显示员工编号。为hire_date列提供一个别名:startdate--计算员工的月收入(工资+佣金)--计算员工的年收入--查询员工的姓名--显示与职务标识连接的姓氏,它们之间由逗号和空格分隔,这列数据命名为 Employee and T...
--日期转换为字符串SELECT DATE_HIRE, TO_CHAR(DATE_HIRE, ‘Month dd yyyy‘) HIRE FROM EMPLOYEE_PAY_TBL;SELECT EMPLOYEE_TBL.EMP_ID, EMPLOYEE_TBL.LAST_NAME, EMPLOYEE_PAY_TBL.POSITION FROM EMPLOYEE_TBL, EMPLOYEE_PAY_TBL WHERE EMPLOYEE_TBL.EMP_ID = EMPLOYEE_PAY_TBL.EMP_ID;SELECT E.EMP_ID,EP.SALARY,EP.DATE_HIRE,E.LAST_NAMEFROM EMPLOYEE_TBL E,EMPLOYEE_PAY_TBL EPWHERE E.EMP_ID = EP.EMP_IDAND ...
--选择部门中30的雇员SELECT * from emp where DEPTNO=30;--列出所有办事员的姓名、部门、编号--采用内连接方式,也就是等值链接,也是最常用的链接SELECT ename,empno,dname from emp e INNER JOINdept d on e.deptno=d.deptno where job=‘CLERK‘;--找出佣金高于薪金的雇员select * from emp where comm>sal;--找出佣金高于薪金60%的雇员select * from emp where comm>sal*0.6;--找出部门10中所有经理和部门20中所有办事员selec...
1.列出至少有一个员工的所有部门。(两个表联合查询,及group by...having的用法)
select dname from dept where deptno in(select deptno from emp group by deptno having count(*)>1);2.列出薪金比“SMITH”多的所有员工。(经典的自连接查询)
select ename from emp where sal>(select sal from emp where ename like‘SMITH‘);3. 列出所有员工的姓名及其直接上级的姓名
select ename,(select ename from emp where empno in(...
create table student(2 sno varchar2(10) primary key,3 sname varchar2(20),4 sage number(2),5 ssex varchar2(5)6 );7 create table teacher(8 tno varchar2(10) primary key,9 tname varchar2(20)
10 );
11 create table course(
12 cno varchar2(10),
13 cname varchar2(20),
14 tno varchar2(20),
15 constraint pk_course primary key (cno,tno)
16 );
17 create table sc(
18 sno varchar2(10),
19 cno varchar2(10),
20 s...
oracle数据库中 rownum 和row_number()的区别和练习标签:本文系统来源:http://www.cnblogs.com/opisnhihs/p/4951517.html
2.列出薪金比“SMITH”多的所有员工。分析:先查询出SMITH工资 : select sal from emp where ename=’SMITH‘;select * from emp where sal > (select sal from emp where ename=’SMITH’);
3.***** 列出所有员工的姓名及其直接上级的姓名。分析:表自映射,为表起别名,进行关联 t1 表模拟员工表 t2 表保存直接上级信息select t1.ename 员工姓名, t2.ename 直接上级 from emp t1,emp t2 where t1.MGR = t2.empno;
4.列出受...
1、 查询Student表中的所有记录的Sname、Ssex和Class列。2、 查询教师所有的单位即不重复的Depart列。3、 查询Student表的所有记录。4、 查询Score表中成绩在60到80之间的所有记录。5、 查询Score表中成绩为85,86或88的记录。6、 查询Student表中“95031”班或性别为“女”的同学记录。7、 以Class降序查询Student表的所有记录。8、 以Cno升序、Degree降序查询Score表的所有记录。9、 查询“95031”班的学
Oracle 练习题标签:本...
1、 查询Student表中的所有记录的Sname、Ssex和Class列。2、 查询教师所有的单位即不重复的Depart列。3、 查询Student表的所有记录。4、 查询Score表中成绩在60到80之间的所有记录。5、 查询Score表中成绩为85,86或88的记录。6、 查询Student表中“95031”班或性别为“女”的同学记录。7、 以Class降序查询Student表的所有记录。8、 以Cno升序、Degree降序查询Score表的所有记录。9、 查询“95031”班的学生人数。 Oracle 练习标签...