Oracle基础查询

select * from teacher
--女性老师编号、姓名
select tno,tname,gendar from teacher where gendar=‘女‘
--姓韩的女性老师编号、姓名、身份证号
select tno,tname,tid from teacher where gendar=‘女‘ and tname like ‘韩%‘
--薪水在[10000,20000)之间老师列表
select sal,tname from teacher where sal between 10000 and 20000
--岗位为讲师或者研发,按照薪水降序排序
select tname,sal,job from teacher where job in(‘讲师‘,‘研发‘)
order by sal desc
--部门所有数据的INSERT语句
select * from dept
--oracle使用|| 来连接字符串
insert into dept values(40,‘人力部‘,‘北京海淀‘)
--怎么查询
select ‘insert into dept values(‘||deptno||‘,‘‘‘||dname||‘‘‘‘||‘,‘‘‘||loc||‘‘‘);‘
from dept;

select * from teacher
--招生部门所有男老师姓名
--使用子查询
select tname,gendar,deptno
from teacher
where deptno=(select deptno from dept where dname=‘招生部‘)
and gendar=‘男‘
--使用内连接 01
select tname,gendar,d.deptno,dname
from teacher t,dept d
where t.deptno=d.deptno
and gendar=‘男‘ and dname=‘招生部‘

--使用内连接 02
select tname,gendar,d.deptno,dname
from teacher t inner join dept d
on t.deptno=d.deptno
where gendar=‘男‘ and dname=‘招生部‘

--所有老师姓名、部门
select tname,dname
from teacher t,dept d
where t.deptno=d.deptno

--所有老师的姓名以及其导师的姓名 自连接
select t1.tname,t2.tname as 导师姓名 from teacher t1,teacher t2
where t2.tno=t1.mgrno

--所有老师的姓名、部门、导师
select t.tname as 老师姓名,t1.tname as 导师姓名,d.dname as 部门
from teacher t left join teacher t1
on t.mgrno=t1.tno
left join dept d
on t.deptno=d.deptno

--列出所有姓名和出生日期
select tname,birthdate from teacher

时间: 2024-08-25 07:21:24

Oracle基础查询的相关文章

Oracle 基础查询

SQL (Structured  Query Language )结构化查询语言. 查询是一种从一个或多个表或视图中检索数据的操作,不会改变表中的数据. 查询数据是数据库的核心操作,是使用频率最高的操作. select语句的基本语法格式是: select [distinct] * | 列名1[as c1],列名2[as c2]..., 列名n , 组函数(...) from 表名1别名1,表名2别名2... [where 条件] [group by 列名1,列名2..., 列名n ] [havi

Oracle基础知识笔记(11) 建表、更新、查询综合练习

有某个学生运动会比赛信息的数据库,保存了如下的表: 运动员sporter(运动员编号sporterid,运动员姓名name,运动员性别sex,所属系号department) 项目item(项目编号itemid,项目名称itemname,项目比赛地点location) 成绩grade(运动员编号id,项目编号itemid,积分mark) 请用SQL语句完成如下功能: 1.  建表,并在相应字段上增加约束: 定义各个表的主键和外键约束: 运动员的姓名和所属系别不能为空: 积分要第为空值,要么为6,4

Oracle基础及三层分页查询

一.数据库表空间和数据文件 解析:一个数据库下可以开N个表空间,一个表空间可以包含N个数据文件.表空间是逻辑概念. 二.关于listener.ora位置 修改该界面上的数据,会影响指定路径的监听配置文件 D:\app\asus\product\11.2.0\dbhome_2\NETWORK\ADMIN 三.数据库和实例的关系 数据库(database):物理操作系统文件或磁盘(disk)的集合.使用Oracle 10g的自动存储管理(Automatic Storage Management,AS

【转载:Oracle基础知识】Oracle数据库体系结构

先来看张直观的图:                                            oracle 11g 体系结构图 理解Oracle体系结构要充分理解三个概念:数据库(database),数据库实例(instance),会话(session),一定不要把这三个概念弄混. 数据库的概念 (A)    物理存储结构由数据文件.控制文件.重做日志文件组成: 1.       数据文件(datafile) select * from dba_data_files; 数据文件包括存

(四)Oracle条件查询,分页查询

1. SQL(基础查询) 1.1基础查询 1.1.1. 使用LIKE条件(模糊查询) 当用户在执行查询时,不能完全确定某些信息的查询条件,或者只知道信息的一部分,可以借助LIKE来实现模糊查询.LIKE需要借助两个通配符: %:表示0到多个字符 _:标识单个字符 这两个通配符可以配合使用,构造灵活的匹配条件.例如查询职员姓名中第二个字符是'A'的员工信息: SELECT ename, job FROM emp WHERE ename LIKE '_A%'; 1.1.2. 使用IN和NOT IN

Oracle基础实训

一.Oracle基础SQL练习 班级表:班级编号(主键.标识列).班级名称.班主任.开班日期老师表:老师编号(主键.标识列) .姓名.性别(默认值‘男’).身份证号(必须是18位数字).联系电话学生表:学号(主键.固定五位数字) .班级编号.姓名.性别.出生日期.联系电话.家庭地址成绩表:编号(主键.标识列) .学号.科目名称.分数 1.表格创建 create table();语法 CREATE TABLE [schema.]table (column datatype [DEFAULT exp

Oracle基础学习5-- Oracle权限之”角色”

任何与权限相关的东西都少不了"角色"的概念,Java如此,.Net如此,Oracle当然也不例外. 角色其实就是权限的集合,将多个权限打包到一个角色中,这样每个角色有特定的权限.当需要给某个对象赋予某种权限时,就找到具有相应权限的角色,然后将它加到这个集合当中.下面就简单看看Oracle中角色的运用. 上篇文章讲到,为了给多用户授予各种权限,我们用到了"权限传递"来代替给用户们一个个授权,简化了授权过程.但这种方式较之用"角色"方式授权还是有很多

Oracle用户及角色的权限管理[Oracle基础]

1.查看所有用户: select * from dba_users; select * from all_users; select * from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): select * from dba_sys_privs; select * from user_sys_privs; 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限 sql>select * from role_sys_privs; 4.查看用户对象权限:

Oracle基础学习4--Oracle权限传递

下面将用一个实例来讲解: 首先用oracle系统用户(sysdba身份)连接到Oracle 然后创建两个用户"lisi"和"zhangsan" 然后为lisi授权,授创建表的权限 lisi连接到数据库,并创建一个表mytable 为zhangsan授予连接到数据库.创建表等权限,并连接到Oracle 我们要知道,lisi创建的表mytable的操作权限只有lisi(还有系统用户)自己拥有,其它用户(比如zhangsan)是不拥有权限的,下面我们以将lisi的表myt