Oracle442个应用场景------------基础应用场景

/////////////////基础知识//////////////////

应用场景178:最简单的select语句

SELECT * FROM Employees;

应用场景179:指定要查询的列

COL EMP_NAME FORMAT A20

COL SEX FORMAT A10

COL TITLE FORMAT A10

SELECT Emp_name, Sex, Title FROM HRMAN.Employees;

应用场景180:使用DISTINCT关键字

SELECT Title FROM HRMAN.Employees;

SELECT DISTINCT Title FROM HRMAN.Employees;

应用场景181:使用ROWNUM

COL EMP_NAME FORMAT A20

COL SEX FORMAT A10

COL TITLE FORMAT A10

SELECT Emp_name, Sex, Title FROM HRMAN.Employees

WHERE ROWNUM<=3;

应用场景182:改变显示的列标题

COL 姓名 FORMAT A20

COL 性别 FORMAT A4

COL 职务 FORMAT A10

COL 身份证 FORMAT A20

SELECT EMP_NAME AS 姓名, SEX AS 性别, TITLE AS 职务, WAGE AS 工资, IDCARD AS 身份证 FROM HRMAN.Employees;

应用场景183:设置查询条件

COL EMP_NAME FORMAT A20

SELECT Emp_Name, Wage FROM HRMAN.Employees WHERE Wage > 3000 AND Wage < 4000;

应用场景184:在查询条件中使用BITWEEN 关键字

COL EMP_NAME FORMAT A20

SELECT Emp_Name, Wage FROM HRMAN.Employees WHERE Wage BETWEEN 3000 AND 4000;

应用场景185:在查询条件中使用IN关键

COL EMP_NAME FORMAT A20

COL TITLE FORMAT A20

SELECT EMP_NAME, TITLE, WAGE FROM HRMAN.Employees WHERE Emp_name IN (‘张三‘, ‘李四‘, ‘王五‘);

应用场景186:实现模糊查询

COL EMP_NAME FORMAT A20

COL TITLE FORMAT A20

COL IDCard FORMAT A20

SELECT EMP_NAME, TITLE, IDCard FROM HRMAN.Employees

WHERE IDCard LIKE ‘%ddd%‘;

COL EMP_NAME FORMAT A20

COL TITLE FORMAT A20

COL IDCard FORMAT A20

SELECT EMP_NAME, TITLE, IDCard FROM HRMAN.Employees

WHERE IDCard LIKE ‘110123_adx_‘;

应用场景187:排序结果集

COL EMP_NAME FORMAT A20

COL TITLE FORMAT A20

COL IDCard FORMAT A20

SELECT EMP_NAME, TITLE, IDCard FROM HRMAN.Employees

ORDER BY Emp_name;

COL EMP_NAME FORMAT A20

COL TITLE FORMAT A20

SELECT EMP_NAME, TITLE, Wage FROM HRMAN.Employees

ORDER BY Wage DESC;

应用场景188:对多列进行排序

COL EMP_NAME FORMAT A20

COL SEX FORMAT A20

SELECT EMP_NAME, Sex, Wage FROM HRMAN.Employees

ORDER BY Sex, Wage;

应用场景189:使用分组统计

COL 职务 FORMAT A10

SELECT Title AS 职务, AVG(Wage) AS 平均公资 FROM HRMAN.Employees GROUP BY Title;

COL Sex FORMAT A10

COL Title FORMAT A10

SELECT Sex, Title, AVG(Wage) FROM HRMAN.Employees GROUP BY Title;

SELECT Dep_Id, AVG(Wage) FROM HRMAN.Employees

GROUP BY Dep_Id HAVING AVG(Wage) > 4000;

应用场景190:连接查询

内连接

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Departments t1, HRMAN.Employees t2

WHERE t1.Dep_id=t2.Dep_id;

外链接:

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Departments t1 INNER JOIN HRMAN.Employees t2

ON t1.Dep_id=t2.Dep_id;

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Departments t1 LEFT JOIN HRMAN.Employees t2

ON t1.Dep_id=t2.Dep_id;

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Employees t2 RIGHT JOIN HRMAN.Departments t1

ON t1.Dep_id=t2.Dep_id;

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Employees t2 FULL JOIN HRMAN.Departments t1

ON t1.Dep_id=t2.Dep_id;

交叉连接

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Employees t2 CROSS JOIN HRMAN.Departments t1;

应用场景191:在连接查询中对空值中对空值的判断

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Departments t1 LEFT JOIN HRMAN.Employees t2

ON t1.Dep_id=t2.Dep_id;

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT  t1.Dep_name, t2.Emp_name FROM HRMAN.Departments t1 LEFT JOIN HRMAN.Employees t2

ON t1.Dep_id=t2.Dep_id

WHERE t2.Emp_id IS NULL;

应用场景192:一个简单地子查询

查询办公室的所有员工:

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_Name, Title FROM HRMAN.Employees WHERE Dep_Id =

(SELECT Dep_Id FROM HRMAN.Departments WHERE Dep_name = ‘办公室‘);

返回两个部门的值:

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_Name, Title FROM HRMAN.Employees WHERE Dep_Id =

(SELECT Dep_Id FROM HRMAN.Departments WHERE Dep_name = ‘办公室‘ OR Dep_name = ‘人事部‘);

应用场景193:在查询中使用具和函数返回值

统计表中所有工资低于品级工资的员工的信息

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_name, Title, Wage FROM HRMAN.Employees WHERE Wage <

(SELECT AVG(Wage) FROM HRMAN.Employees);

应用场景194:IN关键字与返回值的子查询

查询办公室和人事部中的员工信息

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_name, Title, Wage FROM HRMAN.Employees WHERE Dep_Id IN

(SELECT Dep_Id FROM HRMAN.Departments WHERE Dep_name = ‘办公室‘ OR Dep_name = ‘人事部‘);

应用场景195:EXISTS关键字与子查询

查询人事部中的员工信息

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_name, Title, Wage FROM HRMAN.Employees e

WHERE EXISTS

(SELECT Dep_id FROM HRMAN.Departments d

WHERE e.Dep_id = d.Dep_id AND d.Dep_name=‘人事部‘);

使用IN关键字:

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_name, Title, Wage FROM HRMAN.Employees e

WHERE e.Dep_id IN

(SELECT Dep_id FROM HRMAN.Departments d

WHERE e.Dep_id = d.Dep_id AND d.Dep_name=‘人事部‘);

应用场景196:使用UNION关键字的合并查询

从表中Employee中查询各个部门的部门经理

COL Dep_name FORMAT A20

COL Emp_name FORMAT A20

SELECT Dep_Id, Dep_Name FROM HRMAN.Departments

UNION

SELECT Dep_Id, Emp_Name FROM HRMAN.Employees WHERE Title = ‘部门经理‘;

工资大于3000的员工记录:

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_name, Title, Wage FROM HRMAN.Employees

UNION

SELECT Emp_name, Title, Wage FROM HRMAN.Employees WHERE Wage > 3000;

高效率:

COL Emp_name FORMAT A20

COL Title FORMAT A20

SELECT Emp_name, Title, Wage FROM HRMAN.Employees

UNION ALL

SELECT Emp_name, Title, Wage FROM HRMAN.Employees WHERE Wage > 3000;

应用场景197:使用select语句中的DECODE函数

SELECT Emp_name, DECODE(Sex, ‘男‘, ‘先生‘, ‘女‘, ‘女士‘, ‘未知‘) AS Sex

FROM HRMAN.Employees;

应用场景198:使用select与剧中CASE函数

SELECT Emp_name, CASE Sex WHEN ‘男‘ THEN ‘先生‘ WHEN ‘女‘ THEN ‘女士‘ ELSE ‘未知‘ END AS Sex

FROM HRMAN.Employees;

查询表Employees中的员工工资级别:

SELECT Emp_name, Wage, CASE WHEN Wage<=3000 THEN ‘低‘ WHEN Wage>3000 AND Wage<5000 THEN ‘中‘ WHEN Wage>=5000 THEN ‘高‘ END AS GRADE

FROM HRMAN.Employees;

应用场景199:保存查询结果

将办公室的所有员工的姓名和职务信息保存到表中OFFICE:

COL Emp_name FORMAT A20

COL Title FORMAT A20

CREATE TABLE HRMAN.Office AS

SELECT e.Emp_Name, e.Title

FROM HRMAN.Employees e, HRMAN.Departments d

WHERE e.Dep_id = d.Dep_Id AND d.Dep_Name = ‘办公室‘;

SELECT * FROM HRMAN.Office;

应用场景200:插入数据语句

INSERT INTO HRMAN.Departments VALUES(100, ‘公关部‘);

SELECT * FROM HRMAN.Departments;

INSERT INTO HRMAN.Employees (Emp_Name, Sex,Title,  IdCard, Dep_Id)

VALUES (‘小明‘, ‘男‘, ‘职员‘, ‘110123456789‘, 2);

应用场景201:在插入数据时利用默认值

ALTER TABLE HRMAN.Employees ADD InputDate date DEFAULT(sysdate);

INSERT INTO HRMAN.Employees (Emp_Name, Sex,Title,  IdCard, Wage, Dep_Id)

VALUES (‘小李‘, ‘男‘, ‘职员‘, ‘210123456789‘, 2500, 2);

应用场景202:修改数据语句

将表中的所有记录工资增加10%:

UPDATE HRMAN.Employees SET Wage=Wage*1.1;

将表中所有部门为"办公室"的员工工资增加10%

UPDATE HRMAN.Employees SET Wage=Wage*1.1

WHERE Dep_id = (SELECT Dep_id FROM HRMAN.Departments WHERE Dep_name = ‘办公室‘);

应用场景203:修改数据时不允许在唯一性约束列中使用相同的值

ALTER TABLE HRMAN.Employees

ADD CONSTRAINT UK_EMPNAME

UNIQUE(Emp_name);

UPDATE HRMAN.Employees SET Emp_name=‘张三‘ WHERE Emp_name=‘李四‘;

应用场景204:修改数据是不能违反检查约束

ALTER TABLE HRMAN.Employees

ADD CONSTRAINT CK_EMPWAGE CHECK(WAGE>0);

UPDATE HRMAN.Employees SET Wage=-1 WHERE Emp_Name=‘张三‘;

应用场景205:修改数据时不能违反外键约束

为表HRMAN。Departments的DEP_id列和表HRMAN.Employees的DEP_ID列中创建外键约束

ALTER TABLE HRMAN.Employees

ADD CONSTRAINT FK_EMP_DEPID

FOREIGN KEY(Dep_id) REFERENCES HRMAN.Departments(Dep_id);

UPDATE HRMAN.Employees SET Dep_id=200 WHERE Emp_Name=‘张三‘;

应用场景206:删除数据语句

DELETE FROM HRMAN.Employees WHERE Emp_Name = ‘小明‘;

TRUNCATE TABLE HRMAN.Employees;

版权声明:欢迎转载,希望在你转载的同时,添加原文地址,谢谢配合

时间: 2024-10-17 08:06:43

Oracle442个应用场景------------基础应用场景的相关文章

(转)CocosCreator零基础制作游戏《极限跳跃》七、制作游戏结束场景并实现场景切换

CocosCreator零基础制作游戏<极限跳跃>七.制作游戏结束场景并实现场景切换 前面我们实现了游戏的碰撞检测,碰到障碍物我们的角色就会死掉并开始掉落,角色掉落到屏幕底部时候游戏结束,并跳到结束场景. 我们在资源管理器新建GameOver场景.双击打开场景,调整大小为480x800,添加界面需要的节点.如图. 这样我们的结束场景就制作好了.可以预览下. 制作好了,结束场景我们就需要把我们游戏的三个场景关联起来了. 首先我们双击打开我们的第一个场景WelcomeScene.然后在资源管理器创

AssetBundle单场景打包 多场景打包

1.单场景 http://v.youku.com/v_show/id_XOTQxNjU1ODMy.html?spm=a2hzp.8253869.0.0 2.多场景 http://v.youku.com/v_show/id_XOTQxNjU2NTIw.html 3.单场景 只有一个场景,不会出现很多个场景共用资源,所以,就没必要把资源和场景分开.

cocos2dx 3.1从零学习(二)——菜单、场景切换、场景传值

回顾一下上一篇的内容,我们已经学会了创建一个新的场景scene,添加sprite和label到层中,掌握了定时事件schedule.我们可以顺利的写出打飞机的主场景框架. 上一篇的内容我练习了七个新场景,每一个场景都展示不同的东西,像背景定时切换.各种字体的随机颜色和位置等.每次要切换一个场景都要修改AppDelegate中的调用代码,非常的不方便查看,这一篇我们写场景的切换.每当我们创建一个新的场景的时候只要添加对应按钮到主界面,点击即可以切换过去查看对应的效果.这个有点类似官方提供的cppt

搭建LoadRunner中的场景(一) 创建场景

一.创建场景 1. 使用场景创建设置对话框 场景分类: 1. 人工场景:相比面向目标场景,人工场景在实际工作中的应用更为广泛. 2. 面向目标场景:预先定义了一个测试目标,LoadRunner将根据这个目标自动构建场景,有点类似向导模式. 手动场景的两种方式: 用户组方式:虚拟用户分组,测试工程师可以自由地分配各组用户数量(LoadRunner默认用户组方式): 分布百分比方式:需要测试工程师指定某些用户所占的百分比和用户总数,系统再根据这些数据计算产生出具体某类用户的数量(通过勾选"Use t

loadrunner&#160;场景设计-手工场景方案(Schedule)设计&#160;Part&#160;1

参考:http://blog.sina.com.cn/s/articlelist_5314188213_1_1.html loadrunner 场景设计-手工场景方案(Schedule)设计 Part 1 A.   定义方案schedule 在 Scenario Schedule面板中,选择一个方案schedule,或通过点击New Schedule定义一个新的方案 定义schedule: a.新建schedule:点击新建按钮(可选) b.重命名schedule:在Schedule Name输

LR-Controller场景设计与场景监控笔记

笔记要点: 概念 场景设计 场景执行 场景监视 一.概念 1.新建场景中包括两种场景方法:手动场景(更灵活,更接近真实用户操作) 和面向目标场景. 二.场景设计 主要包括Schedule .View Script.Generator参数设置.手动与面向目标场景的后两个参数是一致的.只有Schedule参数不同. 1.手动场景Schedule的配置 Schedule主要设置用户的行为方式 .包括按场景计划和按用户组计划. (1)场景名称 场景名称要反映场景动作. (2)按场景计划 1)Initia

loadrunner 场景设计-手工场景方案(Schedule)设计 Part 2

---------------------------接Part 1-------------------------- D.   从schedule graph中添加action 你可从schedule graph中添加Start Vusers, Duration, and Stop Vusers actions,通过把一个action拆分成两个或者在最后一个action后添加一个action a)   把一个action拆分成两个: 1.  点击编辑模式按钮,确保graph处于编辑模式 方法

游戏模型:场景布局及场景建模

今天卡拉维德专业游戏美术学习交流平台约大家分享的是CG游戏的场景布局及游戏建模,具体流程如下所示.了解如何使用3ds Max和Marmoset创建一个世界末日的立体模型,这是您建模技能的完美组合展示.本教程将指导您完成创建diorama的过程,您将能够在Web浏览器中进行交互. 步骤1:基本地形简单游戏建模这里有四个独立的网格,构成了环境的地板. 我们将做一个越野的地形在柏油路面,路边,路面和杂草丛生的草地. 我使用简单的盒子建模技术来创建这些网格,他们是相当低的res,因为我想要的材料,纹理和

api-gateway实践(7)鉴权场景和网关场景梳理、OAuth2待澄清问题列表

一.身份鉴权验证 1.业务请求 1.1.父元素声明了 "/GroupA/VersionB/*",子元素声明了 "/GroupA/VersionB/Cxxx",access="ROLE_XXXX" 身份识别: 有效token 无token.无效token   权限鉴别: 有权限: 无权限: 1.2.父元素声明了 "/GroupA/VersionB/*",子元素没有声明的 "/GroupA/VersionB/Dxxx&q