Oracle入门(十三A)之Select

一、数据查询语句
(1)select语句完整的句法
select 目标表的列名或列表达式序列
from 基本表名和(或)视图序列
[ where 行条件表达式 ]
[ group by 列名序列
 [ having 组条件表达式 ] ]

[ order by 列名[ asc|desc ],… ]

(2)SQL语句的书写方式
  • SQL 语句不区分大小写
  • 关键字不能简写或分行
  • 子句通常分行书写
  • SELECT,FROM必须有

(3)DUAL 表

select sysdate from dual;

DUAL 表具有一个称为“X”的行,一个称为“DUMMY”的列。

DUAL 表用于创建SELECT 语句并执行不与特定数据库表直接相关的命令。

(4)列别名

  • 可用来重命名列标题
  • 有助于计算
  • 紧跟在列名后面
  • 列名和别名之间可以具有可选的关键字AS
  • 如果别名包含空格、特殊字符或者区分大小写,则需要将别名放在双引号中

(5)NULL
在SQL 中,NULL 是一个有趣的词。要了解NULL,您必须先弄清楚NULL 是什么以及NULL 不是什么。
Null 指不可用、未分配、未知或不适用的值。

  • Null 不同于零或空格。在SQL 中,零是一个数字,而空格是一个字符。
  • 在条件语句中判断是否为null  is null / is not null

(6)LIKE

  • 百分比(%) 和下划线(_) 这两个符号称为通配符
  • 当需要完全匹配含有% 或_ 字符的字符串时,需要指出% 或_ 不是通配符,而是搜索项的一部分。ESCAPE 选项反斜杠(\) 用来表示_ 或% 是名称的一部分,而不是通配符值。

(7)替代变量

  • 有时,可能需要以多个不同的值运行同一查询,以获得不同的结果集。试想一下,如果您需要查一个一个的用户的信息,每次都要编写类似的语句,会不会很麻烦呢?
  • &变量名

注意:仅用于SQL *Plus或者用于原理和SQL *Plus相同的开发工具

注:Oracle中的替换变量,&变量名,&&变量名

(8)单行函数

select to_char(sysdate,'yyyy"年"mm"月"dd"日"') from dual;

注:Oracle之单行函数


二、多表格查询

定义
将两个或两个以上的表格,按照一定的关系连接起来进行查询。
多表格查询分类

  • 连接查询
  • 嵌套查询
  • 集合查询


三、连接查询

(1)等值连接查询

SELECT table1.column, table2.column,...,tablen.column
FROM table1, table2,..., tablen
WHERE table1.column1 = table2.column2..and tablen-1.column1 = tablen.column2;
– 指定列所属的表格
– 列出所有要查询的表
– 表格关系在Where中指出,n个表有n-1个等值关系式

(2)两表连接查询例子

 查询商品信息,显示类型名称。

select gname,gtname,gprice,gstocks 
from t_goods,t_gtype
where t_goods.gtid=t_gtype.gtid;
(3)外连接
 查询结果包含不符合连接条件的元组
左外连接:
select pmid,pdate,sname,pstate from t_main_procure
a,t_supplier b where a.sid=b.sid(+);


四、嵌套查询

 定义:将一个查询语句嵌套在另一个查询语句的Where或Having中的查询

语法:

select select_list
from table
where expr operator
(select select_list

 from table);

查询本月有进货记录的供应商信息

select sid, sname 
from t_supplier
where sid in (select sid from
t_main_procure
where  to_char(pdate,'yyyymm')=to_char(sysdate,'yyyymm'));


五、集合查询
定义:多个SELECT语句的结果进行
集合操作
分类

  • 并操作 UNION
  • 交操作 INTERSECT
  • 差操作 MINUS

(1)并操作 UNION
得到前后两个查询结果的和
UNION-查询结果不包括重复值

select pmid, sname, pdate, pdate, pamount , ’采购’
from t_main_procure a, t_supplier b 
where a.sid=b.sid
union
select omid,uname, odate,oamount,ostate,’订单’
from t_main_order a, t_user b 
where a.uiid=b.uiid;





本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/329450.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为交换机ssh思科交换机_华为交换机 ssh 配置(极简版)

华为的 ssh 叫 STelnet(1)配置STelnet服务器功能及参数rsa local-key-pair create [1]stelnet server enable [2]undo ssh server keepalive disable [3][1] 创建密钥对,这个是必须的。可以选用 rsa dsa ecc 等加密算法,这里选择了最常用的rsa。输入命令…

17.内存分区与分页

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.程序使用内存的3个步骤: 步骤1:把程序分为多个段,包括代码段,数据段;这是编译要做的事…

漫谈C#编程语言在游戏领域的应用

0x00 前言 随着微软越来越开放,C#也变得越来越吸引人们的眼球。而在游戏行业中,C#也开始慢慢地获得了关注。这不, 网易绝代双娇手游团队已经全面使用.Net Core支持前后端统一C#开发,跨平台部署了。 所以,我们就来总结一…

dex工具与transform_Android Studio打包程序时出现transformClassesWithDexForRelease错误

百度半天.没找到直接原因..国外网站上有写这个错误的..国内的真心没找到..英语水平有太低..实在没看懂怎么搞..后来发现clean项目的时候是提示如下错误:Information:Gradle tasks [clean, :app:generateDebugSources, :app:generateDebugAndroidTestSources, :app:mockableAndr…

18.多级页表与快表

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.操作系统内存管理:分页机制多级页表快表来实现; 【0】分页的问题 1)分页的问题(大页表&#xff09…

Oracle入门(十三A1)之替换变量,变量名,变量名

转载自 Oracle中的替换变量,&变量名,&&变量名替换变量(仅用于SQL *Plus或者用于原理和SQL *Plus相同的开发工具):临时存储值利用它可以达到创建通用脚本的目的利用它可以达到和用户交互,故在SQ…

常用API接口签名验证参考

项目中常用的API接口签名验证方法: 1. 给app分配对应的key、secret2. Sign签名,调用API 时需要对请求参数进行签名验证,签名方式如下:  a. 按照请求参数名称将所有请求参数按照字母先后顺序排序得到:keyvaluekeyvalu…

19.段页结合的实际内存管理

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.段与页 段: 用户程序采用分段结构;页: 操作系统采用分页机制管理物理内存;段页结合:程…

python中变量怎么定义_python中的变量的使用定义以及使用规则

本篇包括14章内容,系统介绍了Python语言的基础知识。内容包括Python基础语法、数据类型和类型转换、运算符、流程控制(分支结构循环结构)、数据结构(列表生成式)、函数的定义及使用、异常处理、迭代器生成器、偏函数、python中的模块和包、python标准内置库os以及使…

Oracle入门(十二G)之序列

序列(SEQUENCE)序列是一数据库对象,利用它可生成唯一的整数。由于它属于可共享对象,所以允许多个用户访问。一般情况下,序列用于创建主键值。 序列号的存储和生成与表无关。因此,同一序列可以用于多个表。 …

20.内存换入-请求调页

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.操作系统关于内存管理的核心是基于虚拟内存的分段和分页管理; 3.而用内存换入和换出实现虚拟内存 ; 【1】虚拟内存 1&…

机器人点焊枪接线_用于焊接机器人焊枪工具点及工件坐标系标定装置及方法与流程...

本发明属于机器人焊接技术领域,涉及一种用于焊接机器人焊枪工具点及工件坐标系标定的装置及方法。背景技术:工业机器人是实施自动化生产线、工业4.0、智能制造车间、数字化工厂、智能工厂的重要基础装备之一。而据不完全统计,全世界在役的工业…

采用EntityFramework.Extended 对EF进行扩展(Entity Framework 延伸系列2)

前言 今天我们来讲讲EntityFramework.Extended 首先科普一下这个EntityFramework.Extended是什么,如下: 这是一个对Entity Framework进行扩展的类库. 完全支持EF 5.0/6.0, GitHub地址 https://github.com/loresoft/EntityFramework.Extended, 最后一次更…

Oracle入门(十二J)之同义词

转载自 oracle同义词 一、创建同义词 --普通用法 create [or replace] [public] synonym [schema.] 同义词名称 for [schema.] object [dblink];--创建专有(私有)同义词 create synonym sysn_test for test;--创建公共同义词 create public synonym publ…

21.内存换出

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.有内存换入就有内存换出。 3.因为物理内存空间有限,n次(第n页)换入后导致物理内存用完,则n1次&…

antd vue表单上传文件_vue+axios+antD的上传图片踩坑

一开始使用了实验室大佬封装的axios结合formData进行图片上传,然而传递给后台的formData是空的,打印出来的form又确实是存在的,百度搜了一大推,于是借鉴了百度的做法。1.引入axios import axios from ‘axios‘;2.创建一个新的axios,const …

移动web开发调试工具AlloyLever介绍

简介 web调试有几个非常频繁的刚需:看log、看error、看AJAX发包与回包。其他的如timeline和cookie以及localstorage就不是那么频繁,但是AlloyLever都支持。如你所见: 特征 点击alloylever按钮之间切换显示或隐藏工具面板Console会输出所有用户…

Oracle入门(十三A2)之单行函数

一、函数介绍 功能:改变数据输出形式或进行数据运算输出二、单行函数函数格式 函数说明abs(n) 返回n的绝对值floor(n) 返回小于等于n的最大整数ln(n) 返回n的自然对数&#xff…

22.IO与显示器

【README】 1.本文内容总结自 B站 《操作系统-哈工大李治军老师》,内容非常棒,墙裂推荐; 2.显示器是输入型外设; 3.本章主要内容是讲 显示器是如何被驱动的;或操作系统是如何让用户来使用显示器的; 4.Pri…

d3 i5 神舟精盾k480n_神舟精盾k480n i5 d3和精盾i5 d1哪个好?

(这是D3的数据)主板芯片组IntelHM76CPU系列英特尔酷睿i53代系列CPU型号Intel酷睿i53210MCPU主频2.5GHz最高睿频3100MHz总线规格DMI5GT/s三级缓存3MB核心类型IvyBridge核心/线程数双核...(这是D3的数据)主板芯片组Intel HM76CPU系列英特尔 酷睿i5 3代系列CPU型号Intel 酷睿i5 32…