基本的sql-select语句
插入三张表:
@d:/del_data.sql;
@d:/hr_cre.sql;
@d:/hr_popul.sql;
select * from employees;
DML用于差询与修改数据记录,包含以下 sql 语句:
INSERT: 添加数据到数据库中
UPDATE: 修改数据库中的数据
DELETE: 删除数据库中的数据
SELECT: 选择 (查询) 数据
DDL用于定义数据库的结构,比如创建,修改或删除数据库对象,包含如下 sql 语句:
CREATE TABLE: 创建数据库表
ALTER TABLE: 更改表结构,添加, 删除, 修改列长度
DROP TABLE : 删除表
CREATE INDEX: 在表上建立索引
DROP INDEX: 删除索引
DCL用于控制数据库的访问,包含如下 sql 语句
GRANT:授予访问权限
REVOKE:撤销访问权限
COMMIT:提交事务处理
POLLBACK:事务处理回退
SAVEPOINT:设置保存点
LOCK:对数据库的特定部分进行锁定
--查询表有哪些列:
desc employees;
desc employees
名称 空值 类型
-------------- -------- ------------
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)
--查询指定列的sql语句
select employee_id,last_name,email from employees;
EMPLOYEE_ID LAST_NAME EMAIL
----------- ------------------------- -------------------------
100 King SKING
101 Kochhar NKOCHHAR
102 De Haan LDEHAAN
103 Hunold AHUNOLD
104 Ernst BERNST
107 Lorentz DLORENTZ
. . .
算数运算符可用:
select 7+2 from dual;
7+2
----------
9
日期计算:
select last_name,salary,12*salary+1000 from employees;
LAST_NAME SALARY 12*SALARY+1000
------------------------- ---------- --------------
King 24000 289000
Kochhar 17000 205000
De Haan 17000 205000
Hunold 9000 109000
select sysdate,sysdate+1,sysdate-2 from dual;
SYSDATE SYSDATE+1 SYSDATE-2
--------- --------- ---------
21-MAR-20 22-MAR-20 19-MAR-20
注意:空值不同于0;凡是空值参与的运算,结果都为空(null)
-- 列的别名:类名 as 别名 as可加可不加, 想要区分大小写可在别名上加 " "
SELECT employee_id AS "id", last_name as name, email FROM employees;
id NAME EMAIL
---------- ------------------------- -------------------------
100 King SKING
101 Kochhar NKOCHHAR
102 De Haan LDEHAAN
103 Hunold AHUNOLD
连接符:把列与列,列与字符连接在一起
用 || 表示
可以用来合成列
select last_name|| '`s job_id is' || job_id as details from employees;
DETAILS
-----------------------------------------------
King`s job_id isAD_PRES
Kochhar`s job_id isAD_VP
De Haan`s job_id isAD_VP
Hunold`s job_id isIT_PROG
注意:SQL中只有在起别名的时候用 " " 的 , 其他的都是用 ' '
-- 重复行 去重distinct
SELECT DISTINCT
Company FROM Orders;
SQL : | SQL*PLUS: |
一种语言 ANSI标准 关键字不能缩写 使用语句控制数据库中的表的定义信息和表中的数据 |
一种环境 Oracle的特性之一 关键字可以缩写 命令不能改变数据库中的数据的值 集中运行 |
FF
基本的sql-select语句的更多相关文章
- SQL SELECT 语句
本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于从表中选取数据. 结果被存储在一个结果表中(称为结果集). SQL SELECT 语法 SE ...
- SQL SELECT语句
基本SQL SELECT语句 1. 下面的语句是否可以执行成功 select ename , job , sal as salary from emp; 2. 下面的语句 ...
- SQL Select语句完整的执行顺序(转)
SQL Select语句完整的执行顺序: 1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函 ...
- 170607、SQL Select语句完整的执行顺序
SQL Select语句完整的执行顺序: 1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函 ...
- SQL-W3School-基础:SQL SELECT 语句
ylbtech-SQL-W3School-基础:SQL SELECT 语句 1.返回顶部 1. 本章讲解 SELECT 和 SELECT * 语句. SQL SELECT 语句 SELECT 语句用于 ...
- 优化 SQL SELECT 语句性能
SELECT语句的性能调优有时是一个非常耗时的任务,在我看来它遵循帕累托原则.20%的努力很可能会给你带来80%的性能提升,而为了获得另外20%的性能提升你可能需要花费80%的时间. 检查索引:在SQ ...
- SQL select语句执行顺序
sql查询原理和Select执行顺序 关键字: 数据库 一 sql语句的执行步骤 1)语法分析,分析语句的语法是否符合规范,衡量语句中各表达式的意义. 2) 语义分析,检查语句中涉及的所有数据库对象是 ...
- SQL Select语句完整的执行顺序
1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子句将数据划分为多个分组: 4.使用聚集函数进行计算: 5. 使用having子句筛 ...
- oracle 10g 学习之基本 SQL SELECT 语句(4)
本篇文章中,对于有的和MSSQL Server相同的语法我就没有再写了,这里我只写Oracle和MSSQL Server有点不同的 定义空值 l 空值是无效的,未指定的,未知的或不可预知的值 l ...
- Oracle系列二 基本的SQL SELECT语句
1.查询表中全部数据 示例: SELECT * FROM employees; 说明: SELECT 标识 选择哪些列. FROM 标识从哪个表中选择. * 选择全部 ...
随机推荐
- muduo网络库源码学习————互斥锁
muduo源码的互斥锁源码位于muduo/base,Mutex.h,进行了两个类的封装,在实际的使用中更常使用MutexLockGuard类,因为该类可以在析构函数中自动解锁,避免了某些情况忘记解锁. ...
- CC2530ADC转换
一.ADC简介 ADC支持 14 位的模拟数字转换,具有多达12 位的 ENOB(有效数字位).它包括一个模拟多路转换器,具有多达8 个各自可配置的通道,以及一个参考电压发生器.转换结果通过DMA写入 ...
- java读源码 之 list源码分析(ArrayList)---JDK1.8
java基础 之 list源码分析(ArrayList) ArrayList: 继承关系分析: public class ArrayList<E> extends AbstractList ...
- 【Spark】不熟悉Spark-shell常用参数?这一张图就够了
- STM32 TIM1高级定时器配置快速入门
layout: post tags: [STM32] comments: true 文章目录 layout: post tags: [STM32] comments: true 重点内容 时基单元 计 ...
- es6中 var 和 let的区别
区别1:var没有块级作用域,只有 函数级作用域 和 全局作用域:let有块级作用域 function fn() { { var a = 10; } console.log(a) //输出10 } f ...
- csu1617]强连通分量
题意:定义域属于一个集合S={0,1,...,n-1},求S的子集个数,满足以子集的元素为定义域的函数P(x)的值域等于子集本身. 思路:以元素为点,x到P(x)连一条有向边,不难发现,如果有一个有向 ...
- Python 简明教程 --- 3,Python 基础概念
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 控制复杂性是计算机编程的本质. -- Brian Kernighan 了解了如何编写第一个Pytho ...
- 详解 Spark 中的 Bucketing
什么是 Bucketing Bucketing 就是利用 buckets(按列进行分桶)来决定数据分区(partition)的一种优化技术,它可以帮助在计算中避免数据交换(avoid data shu ...
- spring junit--基础配置
spring官方文档总提示要进行SpringJunit测试必须先配置两个信息: 1.使用Spring IOC功能配置 2.配置正确的JDBC或ORM框架连接数据库 下面进行spring3和hibern ...