京港彩图,SQL语句大全实例

作者:admin发布时间: 2020-01-28浏览次数:

  例 1 对待表的训诲措置数据库中的表 STUDENTS ,或者定义如下:

  例 3 依照表的 STUDENTS 表,筑筑一个只蕴藏学号、姓名、年岁的女高足表。

  例 9 筑立一个只征求先生号、姓名和年事的视图 FACULTY 。 ( 在视图定义中不能蕴藏 ORDER BY 子句 )

  例 10 从弟子表、课程表和选课表中发作一个视图 GRADE_TABLE , 它包罗高足姓名、课程名和效果。

  例 15 节略容易教训数据库模式 TEACHING_DB 。(( 1 )选取 CASCADE ,即当减少数据库模式时,则本数据库模式和其属下的基础表、视图、索引等绝对被删除。( 2 )选用 RESTRICT ,即本数据库模式下属的根本表、视图、索引等事先已打扫,伎俩减省本数据库模式,否则决绝删除。)

  例 19 找出年数在 20 ~ 23 岁之间的高足的学号、姓名和年岁,并按年齿升序排序。 (ASC (升序)或 DESC (降序)证明排序的法子,缺省为升序。 )

  例 20 寻找年齿小于 23 岁、籍贯是湖南或湖北的门生的姓名和性别。(条款比拟运算符=、< 和逻辑运算符 AND (与),其它还也许运用的运算符有:>(大于)、>=(大于等于)、<=(小于等于)、<>(不等于)、 NOT (非)、 OR (或)等。

  谓词 LIKE 只能与字符串联用,频频是 “ <列名> LIKE pattern” 的形式。特地字符 “_” 和 “%” 四肢通配符。

  谓词 IN 显示指定的属性应与后背的集关(括号中的值集或某个探望子句的终于)中的某个值相完婚,实质上是一系列的 OR (或)的缩写。谓词 NOT IN 显露指定的属性不与后背的召集中的某个值相匹配。

  例 22 寻找门生表中籍贯是空值的学生的姓名和性别。(在 SQL 中不能操纵条款:<列名>= NULL 。在 SQL 中惟有一个特殊的探问条目赞成拜谒 NULL 值:)

  例 26 找出籍贯为山西或河北,效果为 90 分以上的学生的姓名、籍贯和成效。(当组织多表连续访问鞭策时,必须服从两条文则。第一,连续条目数凑巧比表数少 1 (若有三个表,就有两个连接条目 ) ;第二,若一个表中的主环节字是由多个列组成,则对此主要害字中的每一个列都要有一个联贯条目(也有少数不同境况))

  例 28 查出课程成果在 80 分以上的女门生的姓名、课程名和成绩。( FROM 子句中的子看望)

  例 29 调查各课程的学时数。(算术表达式由算术运算符+、-、 * 、/与列名或数值常量所组成。)

  例 30 寻找师长的最小年纪。(里面函数: SQL 准绳中只应用 COUNT 、 SUM 、5588tk百合图库总站 原告代理律师并不认可。 AVG 、 MAX 、 MIN 函数,称之为聚积函数( Set Function )。 COUNT 函数的终于是该列统计值的总数目, SUM 函数求该列统计值之和, AVG 函数求该列统计值之平衡值, MAX 函数求该列最大值, MIN 函数求该列最小值。)

  例 35 寻找各课程的平均效果,按课程号分组,且只拣选高足高出 3 人的课程的成果。( GROUP BY 与 HAVING

  GROUP BY 子句把一个表按某一指定列(或少少列)上的值至极的轨则分组,然后再对每组数据实行律例的支配。

  例 37 探望没有选任何课程的学生的学号和姓名。(当一个子看望涉及到一个来自外部拜候的列时,称为关连子调查( Correlated Subquery) 。干系子拜访要用到生活测验谓词 EXISTS 和 NOT EXISTS ,以及 ALL 、 ANY ( SOME )等。)

  例 39 吁请给出一张门生、籍贯列表,该表中的弟子的籍贯省份,也是其我极少弟子的籍贯省份。

  例 41 设有某商场做事人员的两张表:往还员表 SP_SUBORD 和营销经理表 SP_MGR ,其关系数据模式如下:

  例 42 访问籍贯为四川、课程成就在 80 分以上的高足音书及其效率。(自然相连)

  (外连续与外部并外连接容许在真相表中连结非成家元组,空缺局限填以 NULL 。外贯串的熏陶是在做连结掌管时遏止吃亏消息。

  例 44 把师长李映雪的记载参预到先生表 TEACHERS 中。(插入)

  例 50 授予 LILI 有对表 STUDENTS 的调查权。(表/视图特权的授予

  它决断列值是否与指定的字符串神色相成亲。可用于char、varchar、text、ntext、datetime和smalldatetime等范例查询。可操纵以下通配字符:

  百分号%:可立室放浪楷模和长度的字符,要是是汉文,请使用两个百分号即%%。下划线_:成亲单个恣肆字符,它常用来个别表示式的字符长度。

  方括号[]:指定一个字符、字符串或限定,央求所配合偏向为它们中的任一个。[^]:其取值也[]相像,但它要求所成婚方向为指定字符除外的任一个字符。

  在select 语句中恐怕使用group by 子句将行划分成较小的组,而后,诈骗聚组函数返回每一个组的汇总音讯,另外,或者愚弄having子句片面返回的究竟集。group by 子句或许将查询事实分组,并返回行的汇总讯息Oracle 遵循group by 子句中指定的表示式的值分组调查到底。

  探望语句的select 和group by ,having 子句是聚组函数唯一出现的地址,在where 子句中不能诈欺聚组函数。

  having 子句的感动是筛选餍足条款的组,即在分组之后过滤数据,条款中一再包含聚组函数,诈骗having 条目透露特定的组,也可以行使多个分组绳尺进行分组。

  无意候,即使在相连的表中没有反应的行,用户或许想从一张表中看数据,Oracle提供了外连续达成该功能。内相连是指邻接拜望只泄露周备满足相接条件的记录,即等值连结,外贯串的探问真相是内联贯调查事实的施行。外联贯不光返回满意衔接条目的悉数纪录并且也返回了一个表中那些在另一个表中没有成亲行的纪录。外相连的驾御符是“+”。“+”号放在接连条目中音信不完善的那一壁(即没有响应行的那一面)。运算符“+”感导NULL行的建造。建一行或多行NULL来般配贯串的表中音尘无缺的行。

  假设在dept.deptno中有的数值在emp.deptno中没有值,则在做外连接时,

  假使在emp.deptno中有的数值在dept.deptno中没有值,则在做外相接时,

  自毗邻是指团结张表的分裂行间的联贯。该相连不受其我表的沾染。用自衔接可能比较团结张表中差异行的某一列的值。起因自衔接探望仅涉及到某一张表与其自己的相连。是以在from子句中该表名显现两次,辞别用两个差异的又名显露,两局限名作为两张分化的表举行惩处,与别的的表贯串类似,一名之间也愚弄一个或多个联系的列相接。为了差别联合张表的差异行的列,在名前辞别名加以个别。