1.子查询 1.1.子查询简介 1.2.WITH 子查询 2.集合查询 2.1.UNION 和 UNION ALL 2.2.MINUS 2.3.INTERSECT 2.4.集合运算与 ORDER BY 3.DISTINCT 子句 3.1.普通用法 3.2.做聚合函数的参数 4.总结 1.子查询 1.1.子查询简介 子查询是一个嵌套在 SELECT.INSERT.UPDATE 或 DELETE 语句或其他子查询中的查询.任何允许使用表达式的地方都可以使用子查询,换句话说,子查询几乎可以出现在一条…
Django基础五之django模型层(二)多表操作 本节目录 一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询.分组查询.F查询和Q查询 六 xxx 七 xxx 八 xxx 一 创建模型 表和表之间的关系 一对一.多对一.多对多 ,用book表和publish表自己来想想关系,想想里面的操作,加外键约束和不加外键约束的区别,一对一的外键约束是在一对多的约束上加上唯一约束. 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄.…
[SQL查询]集合查询之INTERSECT 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① 集合查询之INTERSECT的使用 Tips: ① 本文在itpub(http://blog.itpub.net/26736162).博客园(http://www.cnblogs.com/lhrbest)和微信公众号(xiaomaimiaolhr)上有同步更新. ② 文章中用…
SQL基础--查询之四--集合查询…
现实需求有时候需要将多个查询组合到一个查询中去 这时就需要使用集合查询操作了 这个操作类似于数学中的交集,并集,和补集的操作   交集就是返回两个查询共有的记录,关键字是INTERSECT 并集是返回各个查询的所有记录,关键字为UNION或者UNION ALL 补集就是返回第一个查询检索出的记录减去第二个查询检索出的记录之后的剩余记录,关键字是MINUS   分完组之后筛选只能使用having关键字,而不能使用where   各种示例如下: 获取一次订单满200元或者订单累计满500元的用户  …
这个是可以的.sql:create table tablename1 as select t2. * from tablename2 t2 where t2.filename =‘张三’. 解释:就是从tablename2 读取出来的结果集作为tablename1 的数据.之后可以通过 “ select * from tablename1” 进行结果查看. Oracle中把一个查询结果插入到一张表中 二.Oracle数据库中支持把查询结果导入到另外一张表中. 例如:有两个表A和B 1)如果两个表…
目录: 1.基本查询 2.多表查询 3.多行查询 4.集合查询 2.连接 3.嵌套查询 1.基本查询 语法: select column|others{,columnName|others} from tablename where condition [group by 分组的条件 having 分组以后的条件 order by 排序显示  ] 起别名: select columnName [ [as] otherName ] {,columnName [ [as] otherName ] }…
一.SQL基础查询 1.select语句 格式:select 字段 from 表名; 2.where 用于限制查询的结果. 3.查询条件 > < >= <= = != 4.与 或(AND,OR) 5.在 不在(IN,NOT IN) 练习:查询工号为1,9,11,16且工资低于1000的员工. 6.在 [a,b] (between val1 and val2) 查询工资大于1000,小于1500的员工. ; 7.空 非空(IS NULL,NOT NULL) 8.全部 任一(ALL,A…
(一)oracle数据库触发器的建立 eg1 CREATE OR REPLACE TRIGGER TRIGGER_ON_TD_DEPARTMENT AFTER INSERT OR UPDATE OR DELETE ON TD_DEPARTMENT REFERENCING OLD AS old NEW AS new FOR EACH ROW declare v_opttype ); BEGIN if inserting then v_opttype := 'ADD'; else v_opttype…
一.环境准备 登录Oracle数据库scott账号,利用emp进行操作. 1.创建 proc_getyearsal 存储过程 -- 获取指定员工年薪 create or replace procedure proc_getyearsal(vempno in number,vyearsal out number) is begin ) into vyearsal from emp where empno=vempno; end; 2.创建 proc_gettemps 存储过程(游标) create…
多表查询:查询结果需要用到两个或者以上表,此时需要多表连接,产生多表查询 1.内连接(等值连接) 示例:将两个表内容连接显示 select * from dept d, emp e where d.deptno = e.deptno; 注意:只有当d.deptno = e.deptno条件满足,内容才会显示,否则不显示 2 .外连接:让等值判断左右两边有一边的数据可以全部显示出来,使用外连接方式时使用”(+)” 格式:   左外连接:字段=字段(+) 右外连接:字段(+)=字段 示例:显示雇员的…
操作练习代码,知识点往下翻 TRUNCATE TABLE hehe1111; select * from hehe1111; desc hehe1111; ,'); ,'); ,'); ,'); ,'); ,'); COMMIT; SAVEPOINT a1; ROLLBACK; DELETE hehe1111; '; select length(name) from hehe1111; select name from hehe1111; select upper(name) from hehe…
1. select * from emp; 2. select empno, ename, job from emp; 3. select empno 编号, ename 姓名, job 工作 from emp; 4. select job from emp; 5. select distinct job from emp; 6. select distinct empno, job from emp;说明:因为雇员编号不重复, 所以此时证明所有的列没有重复,所以不能消除掉重复的列. 7. 查询…
1. select * from emp; 2. select empno, ename, job from emp; 3. select empno 编号, ename 姓名, job 工作 from emp; 4. select job from emp; 5. select distinct job from emp; 6. select distinct empno, job from emp;说明:因为雇员编号不重复, 所以此时证明所有的列没有重复,所以不能消除掉重复的列. 7. 查询…
子查询在一个select中出现多个嵌套查询语句 1.在where子句中使用子查询(一般返回"单行单列" "单行多列" "多行单列"(可以提供in.any.all )) 示例1:查找低于平均工资的雇员信息(返回单行单列) select * from emp where sal < (select avg(sal) from emp) 示例2:查找出公司最早雇佣的雇员信息(返回单行单列) select * from emp where hire…
29.查询选修编号为"3-105"课程且成绩至少高于选修编号为"3-245"的同学的Cno.Sno和Degree,并按Degree从高到低次序排序. select tname,prof from teacher where depart = '计算机系' and prof not in  ( select prof from teacher where depart = '电子工程系') 30.查询选修编号为"3-105"且成绩高于选修编号为&q…
一.监听 1)启动监听: lsnrctl start 2)查看监听状态: lsnrctl status 3)停止监听: lsnrctl stop 4)检查是否可进行网络连接: tnsping ${sid} 二.数据库启停 sqlplus / as sysdba登录之后,执行以下命令: 5)启动数据库: startup; 6)停止数据库: shutdown;…
select to_CHAR(SP_MT_TIME,'DD'),count(*) from table2 group by to_CHAR(SP_MT_TIME,'DD');…
/* * 多条记录连接成一条 * tableName 表名 * type 类型:可以是insert/update/select之一 */ create or replace function my_concat(tableName varchar2,type varchar2) return varchar2 is type typ_cursor is ref cursor; v_cursor typ_cursor; v_temp ); v_result ):= ''; v_sql ); beg…
数据库: 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库. 数据库分类: 关系型数据库 非关系型数据库 数据库 类型 特性 优点 缺点 关系型数据库 SQLite.Oracle.mysql 1.关系型数据库,是指采用了关系模型来组织数据的数据库: 2.关系型数据库的最大特点就是事务的一致性: 3.简单来说,关系模型指的就是二维表格模型, 而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织. 1.容易理解:二维表结构是非常贴近逻辑世界一个概念,关系模型相对网状.…
 Oracle体系结构 ORACLE数据库体系结构决定了oracle如何使用网络.磁盘和内存.包括实例(instance),文件(file)和进程(process不包括后台进程)三部分. 实例:每一个运行的ORACLE数据库与一个ORACLE实例(INSTANCE)相联系.每一次在数据库服务器上启动一数据库时,称为系统全局区(SYSTEMGLOBAL AREA)的一内存区(简称SGA)被分配,有一个或多个ORACLE进程被启动.该SGA和ORACLE进程的结合称为一个ORACLE数据库实例.…
1.Oracle的五大约束条件: 1 主键  primary key2 外键  foreign key,3 唯一  unique,4 检测  check5 非空  not null 实例运用: -- 商品表 客户表 购物车表 /* 商品表 goods 编号gid , 名称 , 价格 ,厂商 客户表 customer 编号cid ,姓名,性别,出生日期,身份证 购物车表 purchase 商品编号,客户编号,商品数量 请建立表,要求 必须有主外键,所有的名称不能为空,价格必须大于0,身份证必须唯一…
子查询与高级查询 我们在检索数据库的时候,需要将多个表关联起来进行查询,最常用的有子查询.连接查询和集合查询,子查询可以从另外一个表获取数据,连接查询可以指定多个表的连接方式,集合查询可以将两个或者多个查询返回的行组合起来. 一.子查询 1.1在where字句中使用子查询 select * from scott.emp where deptno = ( select deptno from scott.emp where empno =7782; ); 1.2在having字句中使用子查询 哪些…
目前Oracle数据库的管理,数据查询等都需要安装Oracle软件或安装Oracle Client等,远程访问都需要先登录到服务器等繁琐的操作.如果是开发团队,那么每个开发,测试,管理人员都要经历这个麻烦的过程. 使用Treesoft数据库管理系统,基于web方式管理ORACLE,只需安装一次,大家直接通过浏览器使用,维护及监控数据库,大大简化工作量. 监控的指标包括:连接数,缓冲区命中率,共享池的命中率,日志缓冲占用,锁情况,表空间使用情况,I/O读写等. Treesoft数据库管理系统支持直…
1.Oracle数据库客户端的种类及现状         目前Oracle数据库维护管理,通常是使用客户端软件:PL/SQL Developer,SQL* Plus,toad,em等进行数据的管理.维护等操作.这些工具大都是与Oracle一起捆绑安装的,基于C/S模式连接,基于命令行方式操作,不易用,并且安装过程繁琐等问题. 2.Oracle数据库当前的维护管理方式        目前Oracle数据库的管理,数据查询等都需要安装Oracle软件或安装Oracle Client等,远程访问都需要…
Oracle数据库迁移PostgreSQL数据库问题及解决 目录 如何计划迁移数据库(现状及问题分析) 统计系统表及表功能 解耦公共表 建立数据库 迁移表结构 导入表数据 改SQL语法 保证数据时效性和完整性 其他(优化SQL等) 1.如何计划迁移数据库 将数据库从Oracle迁移至PostgreSQL数据库,需要考虑的有很多. 但是有一点是不变的,或者说是目的:要保证数据库迁移后,系统功能能够正常使用,或对业务逻辑尽可能少的修改(修改业务逻辑可能会出现意想不到的连锁问题). 那么,就需要想办法…
一.涉及内容 1.掌握SELECT语句的多表连接查询. 2.掌握SELECT语句的子查询. 二.具体操作 (一)根据Oracle数据库scott方案下的emp表和dept表,完成下列操作: 1.查询所有工种为CLERK的员工的姓名及其部门名称. select ename,dname from scott.emp t1 inner join scott.dept t2 on t1.deptno=t2.deptno where job='CLERK'; 2.查询所有部门及其员工信息,包括那些没有员工…
count组函数:(过滤掉空的字段) select count(address),count(*) from b_user max() avg() min(),sum() select sum(age),max(age),min(age),avg(nvl(age,0)) from b_user 1       260     70      10      37.1428571428571 group by:如果前面定义了该字段名  则groupby必须也写上该字段 select name,pw…
作者: kent鹏 转载请注明出处: http://www.cnblogs.com/xieyupeng/p/7289451.html --oracle分页(Pageing Query) select * from (select rownum r,e1.* from (select * from emp order by sal) e1 ) ; SQL SQL> --查询工资比SCOTT高的员工信息 SQL> --1. SCOTT的工资 SQL> select sal from emp…
记得自己要敲o~~~ select * from bonus; select * from salgrade; from dual; --笛卡尔积:两张表的乘积 select * from emp,dept; select * from emp e1,dept d1 where e1.deptno =d1.deptno; /* 内联接: 隐式内联接: 不等值内联接:where e1.deptno <> d1.deptno 自联接:自己连接自己 等值内联接: where e1.deptno =…