oracle常用sql语句学习

在本文中主要记录一些常用的sql语句的写法,供以后查看;本文参考自:http://wenku.baidu.com/link?url=O8W1lSMvIi91CYXtQM9oq2aaCy25ok_J8xTRSUVMqKmQCSAojs1gR6DmjzXQr962Xvn80Lf30dy8SwvX2WSk3IdjSg0KHF1jWL41bEcCieq&pn=51

1.创建用户:

create user user_name identified by password account unlock;

 2.给用户分配权限:

grant connect to user_name

 3.回收用户权限:

revoke connect from user_name

4.创建表:

create table table_name (id int not null,name varchar(10) not null)

 5.创建约束:

(1).创建主键约束:

alter table table_name add constraint 约束名称 primary key(主键字段)

 (2).创建检查约束:

alter table table_name add constraint 检查名称 check(检查条件,比如:age>0 and age<100)

 (3).创建外键约束:

alter table table_name1 add constraint 外键名称 foreign key (table_name1的关联字段) references table_name2(关联字段)

 6.集合运算的sql语句:(集合运算主要是将两个或多个结果集合并为一个结果集),

具体方法有以下几种:

(1).返回几个查询共有的记录--intersect(交集)

select deptno from dept
intersect
select deptno from emp;

(2).返回几个查询的所有记录,记录可以重复--union all(并集)

select deptno from dept
union all
select deptno from emp;

 (3).返回几个查询的所有记录,记录不重复--union(并集)

select deptno from dept
union
select deptno from emp;

 (4).返回第一个查询检索出的记录减去第二个查询检索出的记录之后剩余的记录--minus(补集)

select deptno from dept
minus
select deptno from emp;

 7.子查询:

(1).单行子查询:

select ename,job,sal
from emp
where sal=(
                select sal from emp where ename='SMITH'
               )

单行子查询比较简单,就是子查询只返回一个结果集,这个时候使用的运算符号可以是=,<=,>=,<,>等这些比较简单的符号。

(2).多行子查询:

select ename,job,sal from emp where sal < any(select sal from emp where job='SALESMAN');

 

select ename,job,sal from emp where sal < ALL(select sal from emp where job='SALESMAN');

 这个子查询返回多个查询结果,这里就不能像单行子查询那样使用=,<等比较简单的符号,如上面的语句,涉及到两个词汇any,all。

--all表示比子查询结果集中任意一个值都大或者小的那些结果。

--any表示比子查询结果集中最大的值都小或者最小的值都大的那些结果。

8.分页:

select * from (select rownum r,ename,job,sal from emp where rownum<=10) where r>5;

 9.nvl函数使用:

(1).nvl的使用:

SELECT ENAME,JOB,SAL,NVL(COMM,100) FROM EMP WHERE SAL<2000; 

 这条sql语句表示给工资小于2000没有发放奖金的员工发放奖金100元。

(2).nvl2的使用:

select ename,job,sal,comm,nvl2(comm,comm+100,200) from emp where sal<2000;

 这条sql语句表示给工资小于2000的员工添加100元奖金,如果以前没有奖金的员工添加奖金200元。

10.同义词

(1).同义词的创建:这是为scott用户下面的t_user表创建了一个同义词,这样在这个用户下面可以使用myUser进行访问scott用户下面的那个t_user表

create synonym myUser for scott.t_user

 (2).同义词的删除:

drop synonym myUser;

 11.序列

(1)序列的创建:

create sequence sequence_name --序列的名称
start with 1 --序列的开始值
increment by 1 --序列增长的值
minvalue 1 --序列的最小值(NOMINVALUE)
maxvalue 100 --序列的最大值(NOMAXVALUE)
nocycle --增长或减小到两个极端值时是否进行循环,这里不循环,使用cycle则循环
cache 30;--缓存多少个值在内存中,便于快速的生成序列

 (2)序列的使用

select sequence_name.nextval from dual;
select sequence_name.currval from dual;

 (3)序列的修改:

alter sequence sequence_name
maxvalue 1000
minvalue 10;

 (4)序列的删除:

drop sequence sequence_name;

 12.视图(VIEW)

创建视图:

create or replace view v_user
as
select name,age from t_user
with read only;

 删除视图:

drop view v_user;

 13.索引(index)

创建索引可以提升对表的查询效率,但是在表进行增删改的时候需要更新其对应的索引。因此索引对增删改具有负面效应。

索引的创建:

create index myIndex on t_user(id);

 这个sql语句表示对t_user表的id字段创建了myIndex的索引。

14.表空间(tablespace)

创建表空间:

create tablespace space_name
datafile 'e:/a.ora' size 10M,
            'e:/b.ora' size 5M
extent management local
uniform size 1M;

 注意:表空间只能有系统管理员来进行创建,当表空间内存不足时可以使用alter tablespace对表空间进行扩容。

alter tablespace space_name
add datafile 'e:/c.ora' size 10M;

 为某一用户指定表空间:

CREATE USER ACONG IDENTIFIED BY ACONG
DEFAULT TABLESPACE MYSPACE 

 为表指定表空间:

create table table_name(id int,name varchar(10)) tablespace space_name;

 为索引创建表空间:

create index index_name on table_name(column_name) tablespace space_name

 注意:表及索引一旦创建,表空间无法更改。

 

ExoPlayer硬解码实战:如何绕过系统默认软解码提升播放性能(附完整代码) 本文深入剖析了ExoPlayer默认解码器选择机制的不确定性,并提供了通过自定义MediaCodecSelector强制启用硬解码的完整实战方案。该方案能有效解决因软解码导致的播放卡顿、黑屏花屏及高功耗问题,显著提升Android应用在各种设备上的视频播放性能与稳定性。 阅读详情

相关推荐

RTAB-MAP实战:用Realsense D435i在ROS中搭建室内3D地图(附避坑指南)

本文详细介绍了如何在ROS环境下,使用Intel Realsense D435i深度相机和RTAB-MAP算法进行室内3D地图构建的完整实战流程。内容涵盖环境配置、核心节点数据流解析、关键参数调优、地图保存与重定位,并提供了实用的避坑指南,帮助机器人开发者和研究者快速实现稳定的视觉SLAM应用。

weixin_29095049的博客 490

SQL语句快速学习

​本文来自本·福达的《SQL必知必会(第5版)》的学习总结。如果之前学习过SQL相关知识,这篇文档将很有用。

zx_glave的博客 2568

DC综合中set_dft_signal的实战配置与优化策略

本文深入解析了DC综合中set_dft_signal命令的实战配置与优化策略。文章从命令的核心作用出发,详细拆解了-view、-type、-usage等关键参数,并通过扫描使能与时钟门控的实战案例,展示了如何正确配置以实现测试模式下的功耗优化。同时,文章总结了高级优化策略、与低功耗流程的协同方法以及常见错误排查清单,旨在帮助数字芯片设计工程师构建高可测性、低功耗的稳健DFT基础。

weixin_28347369的博客 403

SQL语句学习

1)什么是SQL语句: SQL 是一种标准化的语言,它允许你在数据库上执行操作,如创建数据库、表等等,查询内容,更新内容,并删除条目等操作。Create, Read, Update, and Delete 通常称为CRUD操作。 SQL语句分类 : DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等。 DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据)。 ...

Morning Sunshine的IT技术博客 3221

LABVIEW学习之MODBUS-TCP通讯

LABVIEW学习之MODBUS-TCP通讯 1,MODBUS-TCP通讯介绍: MODBUS通讯是工业上面经常用到的一种通讯协议。该协议的原理及介绍不在此累述,下面直接介绍LABVIEW对此协议的应用。 2,MODBUS通讯所需的函数: 安装了DSC模块之后可以在数据通信内找到相关函数 3 ,主VI 主要思路就是使用状态机来进行连接 读取 写入 断开。使用枚举类型来选择状态: 1,连接 2,写入多个M继电器: 3,写入单个M继电器 4,写入双字节D...

风动9527的博客 2万+

电机驱动器MP6540H应用设计

/ ... 其他初始化函数(SystemClock_Config, MX_GPIO_Init, MX_TIM1_Init, MX_TIM2_Init)需要你根据STM32CubeMX生成或手动编写。// 假设霍尔传感器引脚是 GPIO_PIN_8, GPIO_PIN_9, GPIO_PIN_10。// 低侧U相GPIO引脚。

zhusl6688的博客 660

SQL语法学习

DDL 的主要功能是定义数据库对象(如:数据库、数据表、视图、索引等)。数据库(DATABASE)创建数据库删除数据库选择数据库USE test;数据表(TABLE)创建数据表普通创建username varchar(64) NOT NULL DEFAULT 'default' COMMENT '用户名',password varchar(64) NOT NULL DEFAULT 'default' COMMENT '密码',

qq_43556680的博客 4162

C# ScottPlot 5.0 WinForms 十字光标示例:轻松实现动态数值显示,你学会了吗?

ScottPlot是一个免费、开源的.NET交互式绘图库,能够轻松地实现大型数据集的交互式显示。它支持多种图表类型,如折线图、柱状图、饼图、散点图等。ScottPlot的性能非常出色,即使是处理千万级别的数据也游刃有余。

java专栏 2218

【网络安全零基础入门必知必会】SQL语言入门(非常详细)零基础入门到精通,收藏这一篇就够了(02)

格式通常是 `SELECT column_name(s) FROM table_name WHERE condition`,其中 `column_name(s)` 是要查询的列,`table_name` 是数据表名,`condition` 是筛选条件。: 即数据库定义语句,用来创建数据库中的表、索引、视图、存储过程、触发器等对象。1.2 数据类型:数字型(int,tinyint,decimal,float等)、日期和时间类型(Date,TIME等)、字符串类型(char,varchar等)。

Libra1313的博客 2862

【NVMEM子系统】二、NVMEM驱动框架

该子系统整体架构不算太大,还是比较容易去理解的,下面我们一起去一探究竟!,该子系统主要用于实现EEPROMEfuse等非易失存储器的统一管理。在早期,像EEPROM驱动是存放于目录下,由于没有做到好的抽象,每次需要去访问相应内存空间,都需要去复制几乎一样的代码,去注册sysfs,这是一个相当大的抽象泄露。NVMEM子系统就是为了解决以往的抽象泄露问题。

Donge's Blog 1714

MOS管的体二极管在LLC中的作用

MOSFET是一个三端器件(G、D、S),在N沟道MOSFET的结构中,源极和漏极之间的N型材料中自然形成了一个寄生的PN结,这个PN结就是体二极管(Body Diode),它是不可避免的器件结构。📌 对于N沟MOSFET:体二极管是从漏极 D 到源极 S 的正向导通二极管,方向为 D → S。MOS管的体二极管在LLC中并不是主功率通道,但却是实现软开关(ZVS)和能量过渡的关键“临时路径”。用得好,它是你的朋友;忽略它,电路就可能烧毁。

weixin_43199439的博客 699

基础篇:数据库 SQL 入门教程_sql学习

某些数据库会列出介于 “Adams” 和 “Carter” 之间的人,但不包括 “Adams” 和 “Carter”;而另一些数据库会列出介于 “Adams” 和 “Carter” 之间的人,包括 “Adams” ,但不包括 “Carter”。这样做的目的是在不重复每个表中的所有数据的情况下,把表间的数据交叉捆绑在一起。如图,“Id_O” 列是 Orders 表中的的主键,同时,“Orders” 表中的 “Id_P” 列用于引用 “Persons” 表中的人,而无需使用他们的确切姓名。

2401_84140112的博客 2515

深度解析 Android 开发工程师岗位:技术栈、职责与面试全攻略

本文深度剖析Android开发工程师职位要求,从核心技术栈到面试准备进行全面解读。关键点包括:1)掌握Kotlin语言特性和Jetpack组件;2)具备UI开发、性能优化和逆向分析能力;3)理解MVVM架构和Room数据库;4)熟悉常用工具链和开发流程。文章提供了详细的面试题库及解析,涵盖基础概念、UI优化、架构设计等方向,并给出职业发展建议:夯实基础、拓展技术广度、培养工程素养。旨在帮助开发者系统性地准备Android岗位求职,把握移动开发领域的技术趋势。

郑伟强dev的专栏 173

数据库学习oracle之基本的sql语句select语句

数据库学习oracle之基本的sql语句select语句

马哥私房菜 430

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

加强对(Oracle)SQL语句的学习(0)

--沉浸在技术之中,如同喝高度白酒,比较麻醉人。工作中,遇到比较复杂的SQL语句,也挺费时间的。今天有时间就研究一下,找到如下几个资源链(比较懒,也懒得COPY,避嫌抄袭)http://www.51one.net/study/Oracle/list1.htm学习两个关键字的用法,intersect(取交集),minus(取差集)(select a.name from a) intersect (s

junctioner的专栏 1181

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Oracle进阶学习2:SQL语句执行过程

文章目录一些背景知识相关知识 一些背景知识 ORACLE数据库启动的时候,Oracle首先在内存中划出一段空间启动一堆进程,进程以及该内存区域统称为Oracle实例 Oracle实例关联的基本内存结构包括: 系统全局区(SGA)由所有服务器进程和后台进程共享,对于所有进程来说,内存空间共享,实际工作中会有一定区域的分配 程序全局区(PGA)专用于某一个服务进程或者后台进程,每一个进程使用一个PG...

a1720119024的博客 3602

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

oracle+dba语句,【学习笔记】Oracle SQL语句 开发DBA常用的SQL语句写法汇总

天萃荷净1、oracle求每月第一天和最后一天SELECT Trunc(Trunc(SYSDATE, 'MONTH') - 1, 'MONTH') First_Day_Last_Month,Trunc(SYSDATE, 'MONTH') - 1 / 86400 Last_Day_Last_Month,Trunc(SYSDATE, 'MONTH') First_Day_Cur_Month,LAST_...

weixin_42515376的博客 262

【oracle资料】oracle sql语句 基础 学习

/*    SQL   Structed Query Language    SQL95   1.DDL 数据库定义语句 create alter drop   2.DML 数据库操作语句 insert delete update select   3.DCL 数据库控

wangwenjie1314的专栏 5025

Oracle sql语句学习

转载请声明来自http://www.cnblogs.com/ulli/archive/2012/02/27/2369882.html 1: Oracle中双引号与单引号的区别 Oracle中的单引号用来表示字符串常量,常用在这些位置 1: where 条件判断里面,作为字符串常量。 ...

weixin_30711917的博客 118

oracle中的SQL查询语句学习

在使用SELECT语句时,必须有相应的FROM子句。当需要复杂查询时可以使用where子句。 1.SELECT语句语法 一个简单的select 语句至少包含一个select子句和一个from子句。其中select子句指明要显示的列,而from子句指明包含要查询的表,该表包含了在select子句中的列。 select选择一个列或多个列 *选择表中所有的列 distinct去掉...

边走边检 255

oracle中sql语句的学习

1. 创建表 Create table [用户名] 表名 (列名1 数据类型 [,…列名N 数据类型] ) 注: 表名首字符应该为字母,可以使用下划线,字母,数字,但不能使用空格和单引号; 不能使用Orcale保留字来为表命名; 表名的最大长度为30个字符; 同一用户模式下的不同表不能具有相同的名称; [用户名]如果用户在自己的模式中创建表,则可以不指定用户名. 2. 修...

xiaoyaolong520的博客 145

Oracle SQL语句学习汇总

select Upper('abcd') from dual; --小写转大写 select Lower('ABCD') from dual; --大写转小写 select initcap(LOC) from DEPT; --将第一个字母变成大写 select concat('a','b') from dual; --连接字符串 select substr('abcdef'

社会犹如一条船,每个人都要有掌舵的准备 1014

学习和使用Oracle的基本Sql语句

oracle sql语句 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b、关闭ORACLE系统 oracle>svrmgrl

幸福的猪的专栏 1491

Oracle查询语句难学,ORACLE学习笔记--SQL查询语句

Oracle的SQL查询总结1查询语句1.1获取唯一记录——distinct获取员工唯一工资状况的SQL语句如下所示。SQL>selectdistincte.employee_name,s.salaryfromemployeese,salaryswheree.employee_id=s.employee_id;1.2分组——groupby子句在数据库查询中,分组是一...

weixin_39722759的博客 155

Oracle学习: SQL语句基础

学习Oracle

m0_62848914的博客 422

学习Oracle------Oracle 和 MySQL在SQL 语句上的的异同 (及Oracle在写SQL 语句时的注意事项)

Oracle与MySQL在SQL语句上存在显著差异:分页查询Oracle需使用ROWNUM,MySQL支持LIMIT;日期处理Oracle用SYSDATE,MySQL用NOW();字符串连接Oracle用||,MySQL用CONCAT()。Oracle的专属注意事项包括:避免隐式类型转换导致全表扫描、空字符串被视为NULL、DDL语句自动提交等。性能优化方面应使用绑定变量、分析函数和MERGE语句。兼容方案可通过ROW_NUMBER()实现通用分页,应用层处理日期函数差异。Oracle开发需重点关注执行计划

xiaoyezhiei的博客 1907
上一篇: hibernate中的dialect作用
下一篇: plsql学习
MjCreator
博客等级 码龄11年 4粉丝 55原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值