Oracle的基本学习(二)—基本查询
一、基本查询语句
(1)查看当前用户
show user;
(2)查看当前用户下的表
select * from tab;
(3)查看员工表的结构
desc emp;
(4)选择全部列
SELECT * FROM emp;
(5)选择特定的列
SELECT empno,ename,sal,comm,deptno FROM emp;
(6)定义空值
a: 空值是无效的,未指定的,未知的的值。
b: 空值不是空格或者0.
c: 包含空值的数据表达式的值都是空值。
--空值不同于0,凡是空值参与运算的都是空值--
select employee_id,
last_name,
salary,
commission_pct,
salary * (1 + commission_pct)
from employees;
改写后:
--nvl函数--
--格式: nvl(E1,E2)--
--解释: 如果E1为NULL,则函数返回E2,否则就返回E1。--
select employee_id,
last_name,
salary,
commission_pct,
salary * (1 + nvl(commission_pct,0))
from employees;
(7)使用别名
a:在列名后直接写。
b:在列名和别名之间添加关键字As。
c:使用双引号。
--使用别名--
select employee_id id,
last_name as name,
12*salary "annual_sal"
from employees;
(8)删除重复行
--使用关键字"DISTINCT"删除重复行--
select distinct department_id
from employees;
二、过滤和排序
(1)where子句
a:使用where子句,将不满足条件的行过滤掉。
b:where子句紧随from子句。
select employee_id,last_name,salary
from employees
where employee_id > 200;
(2)字符和日期
a:字符和日期要包含在单引号中。
b:字符大小写敏感,日期格式敏感。
c:默认日期格式是: DD-MM月-YYYY。
select employee_id, last_name, salary, hire_date
from employees
where hire_date='17-9月-1987';
这样写不方便,我们通常这样写:
select employee_id, last_name, salary, hire_date
from employees
where to_char(hire_date,'yyyy-mm-dd')='1987-09-17';
(3)比较运算
select employee_id, last_name, salary, hire_date
from employees
where salary >= 6000 and salary < 7000;
(4)between
使用between运算来显示在一个区间内的值。
select employee_id, last_name, salary, hire_date
from employees
where salary between 6000 and 7000;
(5)in
使用in运算显示列表中的值。
select employee_id, last_name, salary, department_id
from employees
where department_id in(70,80,90);
(6)LIKE
a: like选择类似的值。
b: "%"代表0个或多个字符。
c: "_"代表一个字符。
select employee_id, last_name
from employees
where last_name like 'S%';
(7)null
使用 is null判断空值。
select employee_id, last_name,manager_id
from employees
where manager_id is null;
(8)逻辑运算
(9)order by
asc:升序
desc:降序
order by在select语句的结尾。
--desc:从高往低--
--asc:从低往高,默认--
--工资从低往高,如果相同再按名字排序--
select employee_id, department_id,last_name, salary
from employees
where department_id = 80
order by salary asc,last_name asc;
Oracle的基本学习(二)—基本查询的更多相关文章
- Oracle 数据库基础学习 (二) 学习小例子:创建一个表,记录商品买卖的情况
运行环境:Oracle database 11g + PL/SQL Developer ex: --创建一个表 create table plspl_test_product( --加入not n ...
- Oracle 数据库基础学习 (六) 子查询
子查询在一个select中出现多个嵌套查询语句 1.在where子句中使用子查询(一般返回"单行单列" "单行多列" "多行单列"(可以提供 ...
- mongodb学习(二)分级查询数组中的值
(PS: 标题有点不妥当...) 大概是这样...数据结构如下: 需要模糊查询title的值... mongodb中操作语句: 主要是注意这里urlElements不需要加[0]...我开始的时候写成 ...
- 蜗牛—ORACLE基础之学习(二)
如何创建一个表,这个表和还有一个表的结构一样但没有数据是个空表,旧表的数据也插入的 create table newtable as select * from oldtable 清空一个表内的数据 ...
- oracle 基础语法(二)
一.实现分页 说明以下tablename是同一表.这些操作是对同一表(tablename)的操作 ======================================= 如何实现分页提取记录 ...
- 学习SQL关联查询
通过一个小问题来学习SQL关联查询 原话题: 是关于一个left join的,没有技术难度,但不想清楚不一定能回答出正确答案来: TabA表有三个字段Id,Col1,Col2 且里面有一条数据1,1, ...
- Oracle笔记(1) 简单查询、限定查询、数据的排序
Oracle笔记(四) 简单查询.限定查询.数据的排序 一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及 ...
- Oracle教程之学习笔记
Oracle教程之学习笔记... ----------------------------------- Oracle教程:---学习笔记: ============================= ...
- oracle查看执行最慢与查询次数最多的sql语句及其执行速度很慢的问题分析
oracle查看执行最慢与查询次数最多的sql语句 注:本文来源 于<oracle查看执行最慢与查询次数最多的sql语句> 前言 在ORACLE数据库应用调优中,一个SQL的执行次数/频率 ...
随机推荐
- 部分linux系统命令(shell 命令)和hadoop命令
linux系统命令(shell 命令): ls : 只列出文件/目录 ls -l : 会显示文件的详情,如大小等 ls -lh : 会显示文件的详情,但大小以k或者M为单位 ls ../ : ...
- vc release模式设置断点调试
在VC release模式做如下设置:在 工程->属性->c/c++->常规->调试信息格式选择 -> 程序数据库(/Zi) 在 工程->属性->链接器-&g ...
- Tomcat 实现热部署
热部署概念 热部署是指在你对JSP或JAVA类进行了修改在不重启WEB服务器前提下能让修改生效,配置文件的修改除外 热部署好处 每次打增量包的时候就不用重新启动tomcat了 ...
- tcp粘包和拆包的处理方案
随着智能硬件越来越流行,很多后端开发人员都有可能接触到socket编程.而很多情况下,服务器与端上需要保证数据的有序,稳定到达,自然而然就会选择基于tcp/ip协议的socekt开发.开发过程中,经常 ...
- R语言入门(一)简介安装
数据挖掘常用的语言有R语言,python,SQL等,其中R语言最受欢迎.(注:SQL Server包含微软研究院开发的两种数据挖掘算法:Microsoft决策树和Microsoft聚集,此外还支持第三 ...
- Visual Studio 2017离线安装包,百度云分流
Visual Studio正式版发布了,然而只能在线安装.虽然官方有提供了离线的方法,但还是蛮复杂的,所以我打包了两个版本发布至百度云分享. 离线分流 地址:http://pan.baidu.com/ ...
- Spark_总结五
Spark_总结五 1.Storm 和 SparkStreaming区别 Storm 纯实时的流式处理,来一条数据就立即进行处理 SparkStreaming ...
- 队列工厂之RabbitMQ
本次和大家分享的是RabbitMQ队列的用法,前一篇文章队列工厂之(MSMQ)中在描述的时候已经搭建了简单工厂,因此本章内容是在其之上扩充的子项不再过多讲解工厂的代码了:RabbitMQ应该是现在互联 ...
- 通过Servlet生成验证码图片
原文出自:http://www.cnblogs.com/xdp-gacl/p/3798190.html 一.BufferedImage类介绍 生成验证码图片主要用到了一个BufferedImage类, ...
- DapperPoco -- 基于Dapper的、轻量级的、高性能的、简单的、灵活的ORM框架
为什么要重复造轮子 因为现有的轮子都在某些方面不太令我满意,下面我来一一点评一下,欢迎拍砖. Entity Framework 我喜欢傻瓜化使用方式的框架,同时又不失灵活性. EF虽然使用起来足够简单 ...