没有合适的资源?快使用搜索试试~ 我知道了~
Oracle入门级,能够让自己很快的账务oracle的操作,对后续的程序开发有帮助
资源推荐
资源详情
资源评论
1
SQL 语言
数据表的结构
3.1 认识 SQL:
SQL 结构化的查询语言。
DML ( 数 据 的 操 作 语 言 ) : 数 据 库 的 更 新 与 查 询 操 作 语 言 ( SELECT.
FROM/INSERT/GROUP/HAVEING/UPDATE/DELETE),开发中几乎都是与 DML 操作为主
DDl(数据的定义语言) 数据库定义语言,如:数据表。约束、定义、用户:数据库设计
DCL(数据库控制语言)权限控制,
重点在于 DML 与 DD
Sco 用户表
3、2 sco 用户表
查询某一个用户下的所有的表结构
SELECT *FROM tab;
想知道每一张表的结构,使用"DESC"命令,“DESC dept;”
部门表:
名称
DEPTNO NOT NULL NUMBER(2) 部门编号。最多两位操作字符
DNAME VARCHAR2(14) 部门名称,最多十四个字符
LOC VARCHAR2(13) 部门位置。最多 13 个字符
SELECT * FRPM dept;
DEPTNO DNAME LOC
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
雇员表:()一对多
DESC EMP;
EMPNO NOT NULL NUMBER(4) 雇员编号 最多四位
ENAME VARCHAR2(10) 雇员姓名:char 20
JOB VARCHAR2(9) 职位: char 9
MGR NUMBER(4) 领导:
HIREDATE DATE 雇佣日期
SAL NUMBER(7,2) 基本工资 小数位最多是 2 位,整数做到 7 位
COMM NUMBER(7,2) 佣金:销售
DEPTNO NUMBER(2) 所属的部门编号
SELECT *FROM DEPT;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
7369 SMITH CLERK 7902 17-12 月-80 800 20
7499 ALLEN SALESMAN 7698 20-2 月 -81 1600 300 30
7521 WARD SALESMAN 7698 22-2 月 -81 1250 500 30
7566 JONES MANAGER 7839 02-4 月 -81 2975 20
7654 MARTIN SALESMAN 7698 28-9 月 -81 1250 1400 30
7698 BLAKE MANAGER 7839 01-5 月 -81 2850 30
7782 CLARK MANAGER 7839 09-6 月 -81 2450 10
7788 SCOTT ANALYST 7566 19-4 月 -87 3000 20
7839 KING PRESIDENT 17-11 月-81 5000 10
7844 TURNER SALESMAN 7698 08-9 月 -81 1500 0 30
7876 ADAMS CLERK 7788 23-5 月 -87 1100 20
7900 JAMES CLERK 7698 03-12 月-81 950 30
7902 FORD ANALYST 7566 03-12 月-81 3000 20
7934 MILLER CLERK 7782 23-1 月 -82 1300 10
工资等级表;
DESC salgrade;
名称 是否为空? 类型
2
----------------------------------------- -------- -------------
GRADE (工资等级编号) NUMBER
LOSAL (此等级的最低工资) NUMBER
HISAL 此等级的最高工资 NUMBER
SELECT * FROM salgrade;
GRADE LOSAL HISAL
---------- ---------- ----------
1 700 1200
2 1201 1400
3 1401 2000
4 2001 3000
5 3001 9999
bounds 表格
DESC bonus;
名称 是否为空? 类型
----------------------------------------- -------- -------------
ENAME VARCHAR2(10) 雇员姓名
JOB VARCHAR2(9) 雇员工作
SAL NUMBER 雇员工资
COMM NUMBER 雇员佣金
未选定行,没有任何的数据。
查询,使用 DML 查询的支持,简单查询可以将其全部列出来,可以控制查询的格式吗?
2、SELECT [DISTINCT] *|列 [别名], 列[别名], ...
1、FROM 表名称[别名];
“*”查询表中的所有数据,from 确定数据的来源(行与列),select 中确定数据的数据列
数据投影—————控制所有选择的数据列。
EMPNO ENAME SAL JOB
---------- -------------------- ---------- ---------------
7369 SMITH 800 CLERK
7499 ALLEN 1600 SALESMAN
7521 WARD 1250 SALESMAN
7566 JONES 2975 MANAGER
7654 MARTIN 1250 SALESMAN
7698 BLAKE 2850 MANAGER
7782 CLARK 2450 MANAGER
7788 SCOTT 3000 ANALYST
7839 KING 5000 PRESIDENT
7844 TURNER 1500 SALESMAN
7876 ADAMS 1100 CLERK
EMPNO ENAME SAL JOB
---------- -------------------- ---------- ---------------
7900 JAMES 950 CLERK
7902 FORD 3000 ANALYST
7934 MILLER 1300 CLERK
支持四则运算,直接使用列的名称进行四则运算,查询每个雇员部门,名字,年薪,
部分列名称不美观 ,别名设置
SELECT empno,ename,sal*12 INCOME,job FROM emp;
EMPNO ENAME INCOME JOB
---------- -------------------- ---------- ---------
7369 SMITH 9600 CLERK
7499 ALLEN 19200 SALESMAN
7521 WARD 15000 SALESMAN
7566 JONES 35700 MANAGER
3
7654 MARTIN 15000 SALESMAN
7698 BLAKE 34200 MANAGER
7782 CLARK 29400 MANAGER
7788 SCOTT 36000 ANALYST
7839 KING 60000 PRESIDENT
7844 TURNER 18000 SALESMAN
7876 ADAMS 13200 CLERK
EMPNO ENAME INCOME JOB
---------- -------------------- ---------- ---------
7900 JAMES 11400 CLERK
7902 FORD 36000 ANALYST
7934 MILLER 15600 CLERK
尽量不要用中文
除了支持数据可的查询操做,还支持数据库的链接操作,“||”进行链接
SELECT empno||ename FROM emp;
对中间出现的内容进行处理
中间加字符串
使用单引号声明:SELECT empno||'hello' FROM emp;
普通数字:直接编写(SELECT empno||1 FROM emp;)
字符串:使用单引号声明(SELECT empno||'hello' FROM emp;)
EMPNO||'HELLO'
---------------------
7369hello
7499hello
7521hello
7566hello
7654hello
7698hello
7782hello
7788hello
7839hello
7844hello
7876hello
EMPNO||'HELLO'
---------------------
7900hello
4
7902hello
7934hello
SELECT '编号:'||empno||',姓名:'||ename FROM emp;(没意义)
'编号:'||EMPNO||',姓名:'||ENAME
---------------------------------------------
编号:7369,姓名:SMITH
编号:7499,姓名:ALLEN
编号:7521,姓名:WARD
编号:7566,姓名:JONES
编号:7654,姓名:MARTIN
编号:7698,姓名:BLAKE
编号:7782,姓名:CLARK
编号:7788,姓名:SCOTT
编号:7839,姓名:KING
编号:7844,姓名:TURNER
编号:7876,姓名:ADAMS
'编号:'||EMPNO||',姓名:'||ENAME
---------------------------------------------
编号:7900,姓名:JAMES
编号:7902,姓名:FORD
编号:7934,姓名:MILLER
简单查询中的 DISTINCT 主要作用是消除重复的信息
SELECT job FROM emp;
查询所有雇员的职位信息,重复内容
JOB
------------------
CLERK
SALESMAN
SALESMAN
MANAGER
SALESMAN
MANAGER
MANAGER
ANALYST
PRESIDENT
SALESMAN
CLERK
JOB
------------------
CLERK
ANALYST
CLERK
SQL> SELECT DISTINCT job FROM emp;
JOB
------------------
CLERK
SALESMAN
PRESIDENT
MANAGER
ANALYST
消除重复是指查询出来的内容整列都存在重复内容
JOB ENAME
------------------ -----------
SALESMAN WARD
MANAGER CLARK
ANALYST FORD
5
CLERK MILLER
CLERK SMITH
ANALYST SCOTT
SALESMAN TURNER
MANAGER BLAKE
PRESIDENT KING
CLERK ADAMS
MANAGER JONES
JOB ENAME
------------------ -----------
SALESMAN MARTIN
CLERK JAMES
SALESMAN ALLEN
姓名和职位没有都重复,无法删除重复吊的数据
总结
简单查询只能参训数据库中的列,不能进行行方面的操作,也就是说只能查询列,不能查
行的数据。
第6节课 SQL 的限定查询
1、SQL 执行执行的顺序
2、限定读好的使用。
如果想对行数据进行查询,可以使用 WHERE 语句进行查询。
(第三个执行的筛选列) SELECT [DISTINCT] *|列 [别名], 列[别名], ...
(第一个执行的,确定来源) FROM 表名称[别名]
(第二个执行的 筛选行) [WHERE 限定条件(s)]
SELECT 是最后一个执行的,筛选要使用若干个条件进行筛选。
(1)关系运算 <, >, <=, >=, !=,(<>)
(2)范围运算 BETEWEEN...AND
(3)空运算 IS NOT, IS NOT NULL
(4 )复杂查询 IN, NOT IN, EXSIT
(5)模糊查询 LIKE, NOT LIKE,
以上的操作运算只能使用一次,如果想使用多次,逻辑运算符:AND(且), OR (或), NOT(非)
(1)且操作只有两个判断运算符都为真实,返回 TRUE;
(2)或操作只要有一个判断为真就,返回 TRUE;
(3)非,判断为真返回假,判断为假时返回真
6.1 关系运算符
关系运算主要是,比大小
查询工资小于 1200,但是不包括 1200
SELECT *
FROM emp
WHERE sal < 1200;//筛选行信息
剩余63页未读,继续阅读
资源评论
zww614655386
- 粉丝: 2
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功