4216曾半仙,SQL语句大全实例
发布时间: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 、 AVG 、 MAX 、 MIN 函数,称之为网络函数( Set Function )。 COUNT 函数的结果是该列统计值的总数目, SUM 函数求该列统计值之和, AVG 函数求该列统计值之匀称值, MAX 函数求该列最大值, MIN 函数求该列最小值。)

  例 35 找出各课程的匀称功勋,按课程号分组,且只选择门生特别 3 人的课程的功劳。123全年历史图库大全( 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等表率拜候。可行使以下通配字符:

  百分号%:可匹配纵情典型和长度的字符,倘使是中文,2019曾道人梅花生肖诗 问,请使用两个百分号即%%。下划线_:匹配单个随意字符,它常用来界限表示式的字符长度。

  方括号[]:指定一个字符、字符串或领域,条目所成婚工具为它们中的任一个。[^]:其取值也[]雷同,但它条款所完婚用具为指定字符之外的任一个字符。

  在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子句中该表名出现两次,区别用两个不同的别名显示,两个体名当作两张差异的表举办执掌,与此外的表赓续一律,别名之间也操纵一个或多个关连的列接续。为了划分团结张表的区别行的列,在名前永诀名加以范畴。