加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 百科 > 正文

Oracle 检索数据(查询数据、select语句)

发布时间:2021-03-11 08:11:22 所属栏目:百科 来源:网络整理
导读:用户对表或视图最常进行的操作就是检索数据,检索数据可以通过 select 语句来实现,该语句由多个子句组成,通过这些子句完成筛

  用户对表或视图最常进行的操作就是检索数据,检索数据可以通过 select 语句来实现,该语句由多个子句组成,通过这些子句完成筛选、投影和连接等各种数据操作,最终得到想要的结果。

语法:

  select { [ distinct | all ] ?columns | * }

  [ into table_name ]

  from { tables | views | other select }

  [ where ?conditions]

  [ group by columns ]

  [ having conditions ]

  [ order by columns ]

  • ?select子句 :用于选择数据表、视图中的列
  • ?into 子句:用于将原表的结构和数据插入新表中
  • ?from 子句:用于指定数据来源,包括表,视图和其他select 语句。
  • ?where 子句:用于检索的数据进行筛选
  • ?group by 子句:用于检索结果进行分组显示
  • ?having 子句:用于从使用group by子句分组后的查询结果中筛选数据行
  • ?order by 子句:用来对结果集进行排序(包括升序和降序)

一、简单查询

  只包含select 子句和 from 子句的查询就是简单查询,同时也是select语句的必选项。

  select 子句用于选择想要在查询结果中显示的列,这些列可以用列名来表示,也可以使用星号(*)来表示。查询数据时,数据将按照select 子句后面指定的列名顺序来显示;如果使用星号,则表示查询所有的列,这时候按照表结构的自然顺序来显示。

  1、检索所有的列

  如果想要检索知道数据表的所有列,在select 子句后面加星号来实现。

  语法: select * ?from ?table_name; ? ? ? ? ? ? ?

    注意:a、检索数据表需要注意是否属于该模式,如果是模式内部检索数据,直接使用表名;

       ? b、如果不在指定表所属的模式内部检索数据,不仅要查看当前模式是否具有查询的权限,而且还要在表名前面驾驶所属的模式名称

       ?c、 form 后面可以跟多个表名,每个表名直接用逗号隔开即可

  2、检索指定的列

  如果想要显示指定的列而不是全部的列,并且被指定列的顺序不受限制,指定部分列也称为投影操作。需要把所显示的列紧跟在select 关键字后面,每个列名用逗号隔开。

  语法:select ?column_name1,column_name2,column_name3... ?from ?table_name; ? ? ? ? ? ?

  3、带有表达式的select 子句

  在使用select 语句时,对于数字数据和日期数据都可以使用算数表达式,可以使用算数运算法,包括加、减、乘、除和括号操作。不仅可以执行单独数学运算,还可以执行单独的日期运算以及与列名关联的运算。

  语法:select salary*(1+0.1,sal ?from ?emp; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

  4、为列指定列名

  为了方便查看查询结果,可以为需要的列名指定别名。在 Oracle 系统中,可以使用as 关键字来指定别名,也可以什么也不用直接指定。

  语法: select empno ?as ?"员工编号",ename ? "员工名称" ? ?from ?emp; ? ? ? ? ? ? ? ??

  5、显示不重复记录

  在默认情况下,结果集中包含所有符合查询条件的数据行,这样就可能出现重复的数据。在实际应用中,重复的数据可能不会带来太多的价值,需要去掉重复的记录,保留唯一记录即可。使用 distinct 即可实现。

  语法: select distince ?job ?from ?emp; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

二、筛选查询

  

三、分组查询

四、排序查询

五、多表关联查询

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读