1.1 SELECT基本语法:

Select * |{[distinct]colum|expression [alias],…} from table;

1.2 查询当前用户所有在用的表及视图:

HR@ORA11GR2>select * from tab;

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
BIN$QVpuz+vXGO3gUwEAAH/YAA==$0 TABLE
BIN$QX3Co/ONIBTgUwEAAH9Xiw==$0 TABLE
BIN$QXf2P63XEXzgUwEAAH8s7A==$0 TABLE
BIN$QXf2P63YEXzgUwEAAH8s7A==$0 TABLE
BIN$QXf2P63aEXzgUwEAAH8s7A==$0 TABLE

1.3 查看表的结构定义

HR@ORA11GR2>desc employees;
Name Null? Type
----------------------------------------------------- -------- ------------------------------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)

1.4 查看表中所有数据

HR@ORA11GR2>select * from departments;

DEPARTMENT_ID DEPARTMENT_NAME                MANAGER_ID LOCATION_ID
------------- ------------------------------ ---------- -----------
10 Administration 200 1700
20 Marketing 201 1800
30 Purchasing 114 1700
40 Human Resources 203 2400
50 Shipping 121 1500
60 IT 103 1400

1.5 查看表中指定列的数据

HR@ORA11GR2>select first_name,last_name,employee_id from employees;

FIRST_NAME           LAST_NAME                 EMPLOYEE_ID
-------------------- ------------------------- -----------
Steven King 100
Neena Kochhar 101
Lex De Haan 102
Alexander Hunold 103
Bruce Ernst 104
David Austin 105

1.6 显示某一列的唯一值

HR@ORA11GR2>select distinct first_name from employees;

FIRST_NAME
--------------------
Ellen
Mozhe
Hermann
Alberto
Britney

1.7sql语句中的加、减、乘、除运算
1)数值型字段的加、减、乘、除运算

HR@ORA11GR2>select first_name,salary,salary+1000,salary-1000,salary*2,salary/2 from employees where first_name='Sarath';

FIRST_NAME       SALARY SALARY+1000 SALARY-1000   SALARY*2   SALARY/2
------------ ---------- ----------- ----------- ---------- ----------
Sarath 7000 8000 6000 14000 3500

2)日期型字段进行加减(日期型字段不能乘除)

HR@ORA11GR2>select hire_date,hire_date-1,hire_date+1 from employees where first_name='Sarath';

HIRE_DATE           HIRE_DATE-1         HIRE_DATE+1
------------------- ------------------- -------------------
2006-11-03 00:00:00 2006-11-02 00:00:00 2006-11-04 00:00:00

1.8null的检索
注:null值无法用=或<>来进行判断,只允许用is null和is not null来进行判断

HR@ORA11GR2>select count(*) from employees where commission_pct is null;

  COUNT(*)
----------
72 HR@ORA11GR2>select count(*) from employees where commission_pct is not null; COUNT(*)
----------
35

1.9 NULL的计算
注:NULL值与任何值四则运算后,其结果均为NULL。

HR@ORA11GR2>select last_name,commission_pct,commission_pct+200,commission_pct-200,commission_pct*2 from employees;

LAST_NAME                 COMMISSION_PCT COMMISSION_PCT+200 COMMISSION_PCT-200 COMMISSION_PCT*2
------------------------- -------------- ------------------ ------------------ ----------------
OConnell
Grant
Whalen
Hartstein
Russell .4 200.4 -199.6 .8 LAST_NAME COMMISSION_PCT COMMISSION_PCT+200 COMMISSION_PCT-200 COMMISSION_PCT*2
------------------------- -------------- ------------------ ------------------ ----------------
Partners .3 200.3 -199.7 .6
Errazuriz .3 200.3 -199.7 .6
Cambrault .3 200.3 -199.7 .6
Zlotkey .2 200.2 -199.8 .4
Tucker .3 200.3 -199.7 .6

1.10 SQL连接符与单引号的使用<可用来编写批量脚本>

HR@ORA11GR2>select 'select * from '||tname||';' from tab;

'SELECT*FROM'||TNAME||';'
---------------------------------------------
select * from BIN$QVpuz+vXGO3gUwEAAH/YAA==$0;
select * from BIN$QX3Co/ONIBTgUwEAAH9Xiw==$0;
select * from BIN$QXf2P63XEXzgUwEAAH8s7A==$0;
select * from BIN$QXf2P63YEXzgUwEAAH8s7A==$0;
select * from BIN$QXf2P63aEXzgUwEAAH8s7A==$0;
select * from BIN$QXf2P63bEXzgUwEAAH8s7A==$0;
select * from BIN$QXf2P63dEXzgUwEAAH8s7A==$0;
select * from BIN$QXs3u7LlHOfgUwEAAH94zw==$0;
select * from COUNTRIES;
select * from COURSE;
select * from DEPARTMENTS;

1.11 Aslias别名
在SELECT选取字段后可接 as 或者空格,来替代字段别名,如果还有空格、特殊字符以及大小写需要用双引号

HR@ORA11GR2>select 'xiaoming' as "Name",1 id from dual;

Name             ID
-------- ----------
xiaoming 1

1.12 distinct 删除重复值

HR@ORA11GR2>select distinct manager_id from employees;

MANAGER_ID
----------
100 123
120
121
147
205
108
148
149
201 MANAGER_ID
----------
102
101
114
124
145
146
103
122 HR@ORA11GR2>select distinct manager_id,department_id from employees; MANAGER_ID DEPARTMENT_ID
---------- -------------
100 30
147 80
90
108 100
149
101 40
100 90
102 60
103 60
114 30
100 50

【SQL】SELECT 语句的更多相关文章

  1. SQL SELECT 语句

      本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL SELECT 语法 SE ...

  2. SQL SELECT语句

    基本SQL SELECT语句   1.       下面的语句是否可以执行成功 select ename , job , sal as salary  from emp; 2.       下面的语句 ...

  3. SQL Select语句完整的执行顺序(转)

    SQL Select语句完整的执行顺序: 1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函 ...

  4. 170607、SQL Select语句完整的执行顺序

    SQL Select语句完整的执行顺序: 1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函 ...

  5. SQL-W3School-基础:SQL SELECT 语句

    ylbtech-SQL-W3School-基础:SQL SELECT 语句 1.返回顶部 1. 本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于 ...

  6. 优化 SQL SELECT 语句性能

    SELECT语句的性能调优有时是一个非常耗时的任务,在我看来它遵循帕累托原则.20%的努力很可能会给你带来80%的性能提升,而为了获得另外20%的性能提升你可能需要花费80%的时间. 检查索引:在SQ ...

  7. SQL select语句执行顺序

    sql查询原理和Select执行顺序 关键字: 数据库 一 sql语句的执行步骤 1)语法分析,分析语句的语法是否符合规范,衡量语句中各表达式的意义. 2) 语义分析,检查语句中涉及的所有数据库对象是 ...

  8. SQL Select语句完整的执行顺序

    1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函数进行计算: 5. 使用having子句筛 ...

  9. oracle 10g 学习之基本 SQL SELECT 语句(4)

    本篇文章中,对于有的和MSSQL Server相同的语法我就没有再写了,这里我只写Oracle和MSSQL Server有点不同的 定义空值 l  空值是无效的,未指定的,未知的或不可预知的值 l  ...

  10. Oracle系列二 基本的SQL SELECT语句

    1.查询表中全部数据 示例: SELECT * FROM employees; 说明: SELECT   标识 选择哪些列. FROM      标识从哪个表中选择. *           选择全部 ...

随机推荐

  1. echarts在地图上绘制散点图(任意点)

    项目需求:在省份地图上绘制散点图,散点位置不一定是哪个城市或哪个区县,即任意点 通过查询官网文档,找到一个与需求类似的Demo:https://www.echartsjs.com/gallery/ed ...

  2. 类的定义与实例化、构造函数和初始化表(day04)

    十三 类的定义与实例化 类的一般形式 class/struct 类名:继承表{ 访问控制限定符: 类名(形参表):初始化表{}//构造函数 ~类名(void){}//析构函数 返回类型 函数名(形参表 ...

  3. Java核心技术读书笔记02

    第四章 对象和类 类之间的关系 最常见的三种关系 依赖("uses-a") Order依赖Account类看信息 聚合("has-a") Order包含多个It ...

  4. HTML表示RGB颜色的方法

    NAME:red,orange,yellow,green,cyan,blue,purple RGB:rgb(r,g,b) RGBA:rgba(r,g,b,a) r.g.b.a取值范围为:0-255 H ...

  5. CentOS 7 x64下Apache+MySQL(Mariadb)+PHP5.6的安装

    每次搭建新服务器,都要来来回回把这些包再装一下,来来回回搞了不下20遍了吧,原来都是凭经验,配置过程中重复入坑是难免的,故写此文做个备忘.虽然有像xampp这样的集成包,但是在生产环境的Linux发行 ...

  6. BALNUM - Balanced Numbers

    BALNUM - Balanced Numbers Time limit:123 ms Memory limit:1572864 kB Balanced numbers have been used ...

  7. 哈哈,找到一种方式来简单模拟EXTJS中与服务器的AJAX交互啦。

    一直在测试客户端的EXTJS,但遇到服务器端就麻烦了,要建库,要写JSON,要有HTTP返回值. 今天测试了一个简单的方法,经过测试是OK了. 那,就是Python的SimpleHTTPServer模 ...

  8. 修改oracle客户端的字符集

    客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter, 表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表 方法有 : ...

  9. C#版winform实现UrlEncode

    在Asp.net中可以使用Server.HTMLEncode和Server.URLEncode 将文本或URL的特殊字符编码,但在控制台或Winform程序中没有办法使用到这些方法, 解决办法:右击项 ...

  10. [Cypress] Find and Test Focused Input with Chrome’s DevTools in Cypress

    In this lesson, we’ll add tests that finds a focused input. We’ll use Chrome’s dev tools from inside ...