- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2_数据库语言课件
SQL结构化查询语言(Structured Query Language);结构化查询语言 (Structured Query Language),具有定义、查询、更新和控制等多种功能,是关系数据库的标准语言。
SQL分类:
数据操纵语言DML Data Manipulation Language :
SELECT INSERT UPDATE DELETE
数据定义语言DDL Data definition language :
CREATE ALTER DROP RENAME TRUNCATE
数据控制语言DCL Data Control Language :
GRANT REVOKE
Transaction:commit rollback savepoint;查看所有表:select table_name from user_tables;
查看表结构:describe dept;(或者desc dept;)
emp表?雇员表
Empno: 雇员工号 Ename: 雇员名字
Job:工作。(秘书、销售、经理、分析员、保管)
Mgr(manager):经理的工号 Hiredate:雇用日期
Sal: 工资 Comm: 津贴 Deptno: 所属部门号
dept表?部门表
Deptno:部门号 Dname:部门名字 Loc: 地址
salgrade表?薪水等级
Grade:等级 losal:最低工资 hisal:最高工资
bonus表?奖金
Ename:雇员名字, job:工作,
sal: 工资 comm:津贴;为表添加注释
comment on table emp is ‘雇员表;
为列添加注释
comment on column emp. Empno is 雇员工号;;Select-from-where句型
SELECT [DISTINCT] {*,column alias,..}
FROM table
Where 条件表达式
alias
Column alias
Column “alias”
Column as alias
;检索单个列
select col from tableName;
检索多个列
select col1, col2,col3 from tableName;
检索所有列
select * from tableName;
使用通配符的优点:书写方便、可以检索未知列
使用通配符的缺点:降低检索的性能
给检索出的列起个别名
select job gong zuo from emp;
select job as gong zuo from emp;;select * from emp;
select empno from emp;
select empno empnumber from emp;
select empno “empnumber” from emp;
select empno as empnumber from emp;
select distinct empno from emp;;条件比较
=,!=,,,,=,=,any,some,all
is null,is not null
between x and y
exists(sub-query)
in(list),not in(list)
like _ ,%,escape ‘\‘ _\% escape ‘\’
;select * from emp where comm is null;
select * from emp where comm is not null;
select ename, sal from emp where sal in (800, 1250, 1500, 2000);
select ename, sal from emp where ename in (‘SMITH’, ‘ALLEN’, ‘KING’);
select ename, sal from emp where sal between 1000 and 2500;
select ename, sal from emp where deptno 10;
;逻辑复合条件
not,and,or
计算次序问题的解决,最好用括号进行分组处理
SQL优化问题:
AND: 把检索结果较少的条件放到后面
OR: 把检索结果较多的条件放到后面;select ename, hiredate from emp where hiredate ’20-2月-81’;
select ename, sal from emp where deptno = 1
文档评论(0)