1、查询某个表有多少列。

 select column_name
from user_tab_columns
where table_name = 'DQ_S1';

列出所有的字段名。

2、查询昨天一天24个小时数

 select *
from dq_s2
where date_time > trunc(sysdate-1) and date_time <=trunc(sysdate)
order by siteid asc,date_time asc;

3、插入日期型值

 insert into employee(empno, ename, hiredate, sal) values(7369,'SMITH', to_date('1980/12/17', 'yyyy/MM/dd'),800)

4、merge into 用法

merge into 既可以更新,也可以插入

1)满足条件时,更新(update);不满足,插入(insert)。

 merge into test02 t1
using (select 3 aa from dual) t2
on (t1.aa = t2.aa)
when matched then
update set t1.bb = 6
when not matched then
insert (aa,bb) values (3,6)

表test02 就两列 aa bb

select 3 aa  from dual 判断 aa 中是否有3 这个值,并且on (t1.aa = t2.aa) 或多个条件,如果有就update 更新 bb,如果没有就inset插入
  merge into zd_sjlr t1 using dual on(t1.C_DATE=to_date('','yyyy-MM-dd') and t1.C_TIME='0:00-12:00' and t1.C_ROAD='CH2')
when matched then update set t1.C_BTIJI=2.1, t1.C_STIJI=6.1 where t1.C_DATE=to_date('','yyyy-MM-dd') and t1.C_TIME='0:00-12:00' and t1.C_ROAD='CH2'
when not matched then insert(t1.C_DATE,t1.C_TIME,t1.C_ROAD,t1.C_BTIJI,t1.C_STIJI) values(to_date('','yyyy-MM-dd'),'0:00-12:00','CH2','2.1','6.1')

批执行

declare
total date:= trunc(sysdate-2) ;
begin
for i_count in 1..10000 LOOP
insert into DQ_DATE(date_time) values ( total );
total := total + 1/24;
end loop;
end;

2)同一张表,不满足条件,插入(insert)数据

 merge into dq_report_info t1 using dual on(t1.reportname=?)
when not matched then insert(t1.FID,t1.DUTY_DATE,t1.REPORTNAME,t1.DUTY_NAME,t1.REPORTSRC,t1.REPORTDATE,t1.STATUS1)
values(sys_guid(),?,?,?,?,?,?)

5、原始数据时序图

连接两列的字符串:t1.siteid||'-'||t2.sitename

 select t2.sitename,t1.*,t1.siteid||'-'||t2.sitename siteall from
(select tb1.*,case when tb2.FID is not null then '有数' else '无数' end status from
(select SITEID,DATE_TIME - interval '' hour starttime,DATE_TIME endtime from (select DATE_TIME from DQ_DATE where DATE_TIME > sysdate -interval '' hour and DATE_TIME < sysdate),(select distinct siteid siteid from DQ_S2 where DATE_TIME > sysdate-7) order by siteid desc,DATE_TIME) tb1
left join DQ_S2 tb2 on tb1.siteid=tb2.siteid and tb1.endtime = tb2.DATE_TIME) t1
left join DQ_ZDXXB t2 on t1.siteid = t2.siteid

6、合并多条数据为一条数据

用wm_concat()  函数  数据<4000条

 SELECT wm_concat (t2.sitename) sitename
FROM (SELECT *
FROM DQ_T_V8_MV
WHERE siteid IN (3,5,11,18,9,10,19,20,8,28,7,37)
AND all_level = 1) t1
LEFT JOIN
DQ_ZDXXB t2
ON t1.siteid = t2.siteid
WHERE t1.day_time = TRUNC (SYSDATE - 1);

7、联合主键

CREATE TABLE DQ_QK_C
(
C_DATE DATE,
C_CONTENT VARCHAR2 (10),
C_RESULT VARCHAR2 (5),
C_PROCESS VARCHAR2 (50),
CONSTRAINT PK_TAB PRIMARY KEY (C_DATE, C_CONTENT)/*联合主键*/
);

8、修改添加字段

alter table tableName modify(colName varchar2(25));
alter table table_name add (col1 type,col2 type);

9、复制表结构、数据

--1. 复制表结构及其数据:

create table table_name_new as select * from table_name_old

--2. 只复制表结构:

create table table_name_new as select * from table_name_old where 1=2;

--或者:

create table table_name_new like table_name_old

--3. 只复制表数据:

--如果两个表结构一样:

insert into table_name_new select * from table_name_old

--如果两个表结构不一样:

insert into table_name_new(column1,column2...) select column1,column2... from table_name_old

pasting

10、insert into  Table as Select

insert into table a select * from table b 

11、把A用户的t1授权给B用户

grant select on t1 to B

oracle 语句 笔记的更多相关文章

  1. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  2. ORACLE存储过程笔记1

    ORACLE存储过程笔记1 一.基本语法(以及与informix的比较)   create [or replace] procedure procedure_name (varible {IN|OUT ...

  3. oracle学习笔记第一天

    oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字   1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...

  4. Oracle学习笔记之四,SQL语言入门

    1. SQL语言概述 1.1 SQL语言特点 集合性,SQL可以的高层的数据结构上进行工作,工作时不是单条地处理记录,而对数据进行成组的处理. 统一性,操作任务主要包括:查询数据:插入.修改和删除数据 ...

  5. Oracle学习笔记—数据字典和常用命令(转载)

    转载自: oracle常用数据字典和SQL语句总结 Oracle常用命令大全(很有用,做笔记) 一.Oracle数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一 ...

  6. 吴裕雄--天生自然 oracle学习笔记:oracle理论学习详解及各种简单操作例子

    1. 数据库的发展过程 层次模型 -->网状模型 -->关系模型 -->对象关系模型 2. 关于数据库的概念 DB:数据库(存储信息的仓库) DBMS:数据库管理系统(用于管理数据库 ...

  7. [转载]T-SQL(Oracle)语句查询执行顺序

    原文链接:http://blog.sina.com.cn/s/blog_61c006ea0100mlgq.html sql语法的分析是从右到左,where子句中的条件书写顺序,基本上对sql性能没有影 ...

  8. 性能测试常用Oracle语句

    性能测试常用Oracle语句 显示数据库当前的连接数 select count(*) from v$process; 显示数据库最大连接数: select value from v$parameter ...

  9. oracle语句随笔

    oracle语句随笔 dmp数据的导入. ; --创建用户 GRANT CONNECT,RESOURCE,DBA TO memsspc; --赋值权限 --cmd 中导入命令 IMP memsspc@ ...

随机推荐

  1. 反向代理负载均衡之APACHE

    反向代理负载均衡之APACHE 一.反向代理1.1 介绍反响代理 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将 ...

  2. mybatis和spring整合的关键配置

    spring配置文件 applicationContext.xml: <beans xmlns="http://www.springframework.org/schema/beans ...

  3. 浏览器桌面通知Notification实践

    一言不合就上图: 最近常常在浏览器看到这样的消息推送,还有QQ.com的推送,现在我对这个不了解,不知道叫消息自动推送对不对,这个时chrome浏览器的截图,出现在右下角,其他浏览器的样式可能有些微差 ...

  4. 20175225 《Arrays和String单元测试》

    ---恢复内容开始--- 题目 在IDEA中以TDD的方式对String类和Arrays类进行学习,测试相关方法的正常,错误和边界情况 - String类 - charAt - split - Arr ...

  5. windows下sublime通过sftp扩展上传文件到linux服务器上

    首先在package controll下载sftp扩展,在任意磁盘下新建文件夹: 然后,添加该文件夹到sublime中,并在xhell中链接linux服务器,新建目录,mkdir  /home/hel ...

  6. TensorFlow 框架

    TensorFlow TensorFlow核心程序由2个独立部分组成:   a:Building the computational graph构建计算图   b:Running the comput ...

  7. hdu3183 rmq求区间最值的下标

    两个月前做的题,以后可以看看,是rmq关于求区间最值的下标 /* hdu3183 终点 给一个整数,可以删除m位,留下的数字形成一个新的整数 rmq 取n-m个数,使形成的数最小 */ #includ ...

  8. 使用siege执行压力测试

    没有安装siege? 可参考我的另一篇博客 使用siege执行压力测试笔记 场景分析 使用siege对https://www.baidu.com/进行加压. 要求 模拟20个用户同时访问 一共跑3个循 ...

  9. python 全栈开发,Day86(上传文件,上传头像,CBV,python读写Excel,虚拟环境virtualenv)

    一.上传文件 上传一个图片 使用input type="file",来上传一个文件.注意:form表单必须添加属性enctype="multipart/form-data ...

  10. 2017-2018-2 20155309 南皓芯 Exp7 网络欺诈防范

    实践内容 本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法.具体实践有 1,简单应用SET工具建立冒名网站 2.ettercap DNS spoof 3.结合应用两种技术,用 ...