(6)Oracle基础--简单查询
.基本查询语句
SELECT [DISTINCT] column_name1,... | *
FROM table_name
[WHERE conditions];
P: DISTINCT关键字的作用是过滤掉重复的记录.
.查询表中所有字段及指定字段
<1> 查询表中所有字段
SELECT * FROM table_name;
<2> 查询指定字段
SELECT column_name1,column_name2... FROM table_name;
.给字段设置别名
<1> 使用空格设置别名
SELECT column_name new_column_name FROM table_name;
<2> 使用 AS 设置别名
SELECT column_name AS new_column_name FROM table_name;
(注意: 给字段设置别名并不能改变字段的名字,只是查询结果的显示名)
.运算符和表达式
表达式 = 运算符 + 操作数
运算符分类:
<1> 算数运算符 +, -, *, /
<2> 比较运算符 >, >=, <, <=, <>
<3> 逻辑运算符 and, or, not
.带条件的查询
SELECT column_name1,column_name2 ... FROM table_name WHERE EXPRESSIONS;
.模糊查询
<1> 通配符的使用(_,%)
① 一个_代表一个字符
② %可以代表0到多个任意字符
<2> 使用语法
SELECT column_name1,column_name2 ... FROM table_name WHERE column_name LIKE 'string';
.范围查询
<1> 使用多个表达式
SELECT column_name1,column_name2 ... FROM table_name
WHERE column_name > value1 AND column_name < value2;
<2> 使用 BETWEEN ... AND
SELECT column_name1,column_name2 ... FROM table_name
WHERE column_name BETWEEN value1 AND value2;
<3> 使用 IN / NOT IN
SELECT column_name1,column_name2 ... FROM table_name
WHERE column_name IN | NOT IN (value1,value2, ...);
<4> 使用 EXISTS / NOT EXISTS
SELECT column_name1,column_name2 ... FROM table_name
WHERE EXISTS | NOT EXISTS (select_expression);
P: IN 与 EXISTS的区别
1. IN 后面的集合包含IN前面的值就返回真, EXISTS 后面的结果集不为空即返回真.
2. IN 引导的字句只能返回一个字段,而 EXISTS 引导的字句可以返回多个
.对查询结果排序
SELECT column_name1,column_name2... FROM table_name
[WHERE conditions] ORDER BY column1 DESC/ASC,column2 DESC/ASC .... ;
P: 1. DESC 表示降序,ASC 表示升序;
2. 对多个字段排序时优先级按先后次序递减.
.CASE ... WHEN语句的使用
作用: 可以根据查询结果中字段的不同的值返回不同的结果
<1> 第一种形式
SELECT CASE column_name WHEN value1 THEN result1 ... [ELSE result] END FROM table_name;
<2> 第二种形式
SELECT CASE WHEN column_name operator value1 THEN result1 ... [ELSE result] END FROM table_name;
P: operator为操作符,如+ - * / > < 等
.decode函数的使用
decode函数与case when的第一种形式比较类似
SELECT DECODE(column_name,value1,result1,...,DEFAULT value) FROM table_name;
P: 不指定默认值的情况下,如果没有匹配的值,则返回NULL.
(6)Oracle基础--简单查询的更多相关文章
- Oracle其他简单查询
范例:查询公司中所有雇员的职位信息 SELECT job FROM emp; 实际在公司里面,一个职位会有多个人员.如果查询全部职位,肯定会存在重复.要消除掉重复,利用DISTINCT完成.(dist ...
- oracle中简单查询语句的格式及执行顺序分析
一条简单的查询sql格式如下: SELECT ... FROM .... [WHERE ...] --过滤单行 [GROUP BY ... [HAVING ...]]--GROUP BY对前面wh ...
- Oracle 数据库 简单查询
select DISTINCT dept_id from s_emp; desc s_emp; ; --给入职3年以上员工发10万元年终奖 ; --列出职位是仓库管理员的名字和工资 select la ...
- Oracle 基础表查询
--查询所有用户表的数据 SELECT * FROM ALL_TABLES WHERE OWNER='USER_NAME' --如果是用该用户登录使用以下语句: SELECT * FROM USER_ ...
- oracle习题-简单查询
题一 1 实现将已知表中的数据插入到另一个表中 学生表:stu1 向表中插入两条数据 学生信息表2:stuinfo 将stu1表中的两条数据导入到stuinfo表中,执行下列语句 此时查看一下st ...
- 学习笔记:oracle学习三:SQL语言基础之检索数据:简单查询、筛选查询
目录 1. 检索数据 1.1 简单查询 1.1.1 检索所有列 1.1.2 检索指定的列 1.1.3 查询日期列 1.1.4 带有表达式的select语句 1.1.5 为列指定别名 1.1.6 显示不 ...
- Oracle笔记(1) 简单查询、限定查询、数据的排序
Oracle笔记(四) 简单查询.限定查询.数据的排序 一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及 ...
- [转载]Oracle数据库基础--SQL查询经典例题
Oracle基础练习题,采用Oracle数据库自带的表,适合初学者,其中包括了一些简单的查询,已经具有Oracle自身特点的单行函数的应用 本文使用的实例表结构与表的数据如下: emp员工表结构如下: ...
- Oracle记录(四) 简单查询、限定查询、数据的排序
一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统.ANSI(美国国家标准学会) ...
随机推荐
- linux两个线程
http://blog.csdn.net/marksinoberg/article/details/50945212
- OSGi 系列(十二)之 Http Service
OSGi 系列(十二)之 Http Service 1. 原始的 HttpService (1) 新建 web-osgi 工程,目录结构如下: (2) HomeServlet package com. ...
- pip安装包
默认的在安装文件的Lib\site-packages\路径下面 cmd窗口 cd切换路径:C:\Users\admin\AppData\Local\Programs\Python\Python36\S ...
- extjs 学习一
环境 : eclipse ext tomcat 6 将下载的extjs 解压后全部 导入到项目中 .使用时 <!-- 1.引入样式 2.引入库文件 ,底层驱动 3. ext-all--&g ...
- 想到的regular方法果然已经被sklearn实现了就是L1和L2组合rugular
- org.apache.hadoop.ipc.RemoteException: java.io.IOException:XXXXXXXXXXX could only be replicated to 0 nodes, instead of 1
原因:Configured Capacity也就是datanode 没用分配容量 [root@dev9106 bin]# ./hadoop dfsadmin -report Configured Ca ...
- Linux编程规范
1)在使用C语言进行编程时,源文件都必须加---文件头 /******************************************************** *文件名:test.c *创 ...
- 人类基因组三代组装: cano
git clone https://github.com/marbl/canu.git cd canu/src make -j <number of threads> 使用实例: canu ...
- 命名空间namespace ,以及重复定义的问题解析
名字空间是用来划分冲突域的,把全局名字空间划分成几个小的名字空间.全局函数,全局变量,以及类的名字是在同一个全局名字空间中,有时为了防止命名冲突,会把这些名字放到不同的名字空间中去. 首先我们看一下名 ...
- document.body和document.documentElement区别
1.document.documentElement表示文档节点树的根节点,即<html> document.body是body节点 2. 页面具有 DTD,或者说指定了 DOCTYPE ...