
Oracle
fu_manxing
这个作者很懒,什么都没留下…
展开
-
在oracle中创建自动增长字段
oracle在创建表时和其他的数据库有点不一样,如SQL SERVER可以在int类型的字段后加上identity(1,1),该字段就会从1开始,按照+1的方式自增,将这个字段设置为主键,有利于我们进行数据的插入操作。MySql中可以使用“auto_increment”即可。但是oracle有点麻烦,需要使用序列和触发器达到目的。 首先我们创建一个员工表。 crea转载 2016-08-18 15:21:30 · 306 阅读 · 0 评论 -
解析:内联,左外联,右外联,全连接,交叉连接的区别
连接分为:内连接、外连接、交叉连接 一、内连接——最常用 定义:仅将两个表中满足连接条件的行组合起来作为结果集。 在内连接中,只有在两个表中匹配的行才能在结果集中出现 关键词:INNER JOIN 格式:SELECT 列名表 FROM 表名1 [INNER] JOIN 表名2 ON或WHERE 条件表达式 说明: (1)列名表中的列名可以出自后面的两个表,但如果两个表中转载 2016-08-11 16:45:24 · 2235 阅读 · 0 评论 -
sql 2
表的字段非常简单,创建表的sql语句如下: Sql代码 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Exam]') AND type i转载 2016-08-11 22:27:28 · 185 阅读 · 0 评论 -
sql 3
Sql代码 select smallRfunctions from ( SELECT smallRfunctions,count(resDepart) as num FROM paCuAssessment where datediff(m,subDate,getDate())=0 group by bigRfunctions, smallRfunctions) m转载 2016-08-11 22:28:11 · 203 阅读 · 0 评论 -
sql l连接
在做连接查询时候只是用“SELECT * FROM a,b WHERE a.name='luoqinglong' and a.id=b.id ” 两个表做连接查询,但是用来联系两个表的字段(比如id)为空值,如果时用上面的方法,那么id为空的记录就不会在查询的结果中。 SELECT * FROM a Left join b on a.id=b.id WHERE a.name='qinya'转载 2016-08-11 22:28:55 · 269 阅读 · 0 评论 -
SQL常用语句
SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-nam转载 2016-08-11 22:30:47 · 367 阅读 · 0 评论 -
oracle 常用函数
1。上月末天: SQL> select to_char(add_months(last_day(sysdate),-1),'yyyy-MM-dd') LastDay from dual; LASTDAY ---------- 2005-05-31 2。上月今天 SQL> select to_char(add_months(sysdate,-1),'yyyy-MM转载 2016-08-11 22:32:53 · 185 阅读 · 0 评论 -
sql 语句
Sql代码 select * from t where rownum minus select * from t where rownum 请写出将T表中第3~5行数据列出来的SQL语句 --------------------------------------------------------------------转载 2016-08-11 22:34:16 · 318 阅读 · 0 评论 -
sql 查询 前几条数据
sql在不同数据库查询前几条数据 1. ORACLE SELECT * FROM TABLE1 WHERE ROWNUM HQL: from table1 t order by t.createTime desc where rownum2. INFORMIX SELECT FIRST N * FROM TABLE1转载 2016-08-11 22:38:35 · 604 阅读 · 0 评论 -
sql 语句
两张表: A:id,age,column1,column2 B:id,age,column1,column2 A.id 与 B.id关联。 将B中age>40的column1,column2更新到A的相应记录中,只能写一个语句。 写出mysql和oracle两个版本。 Sql代码 update A set A.column1 = (转载 2016-08-11 22:40:10 · 217 阅读 · 0 评论 -
----------删除数据库中重复记录的SQL语句(转)--------------------
在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢? 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 Java代码 select * from people where peopleId in (select peopleId from people group by peopleId ha转载 2016-08-11 22:26:38 · 329 阅读 · 0 评论 -
SQL 语句中 where 条件后 写上1=1 是什么意思
这段代码应该是由程序(例如Java)中生成的,where条件中 1=1 之后的条件是通过 if 块动态变化的。例如: String sql="select * from table_name where 1=1"; if( conditon 1) { sql=sql+" and var2=value2"; }原创 2016-08-26 16:16:26 · 26061 阅读 · 0 评论 -
ORACLE分页查询SQL语法——最高效的分页
author:XIAOHUI_LIAO ---from:http://blog.youkuaiyun.com/XIAOHUI_LIAO/article/details/1759990 --1:无ORDER BY排序的写法。(效率最高)--(经过测试,此方法成本最低,只嵌套一层,速度最快!即使查询的数据量再大,也几乎不受影响,速度依然!)SELECT * FROM (SELECT RO转载 2016-08-26 16:25:48 · 632 阅读 · 0 评论 -
数据库 左连接 右连接 全连接用法小结
连接可以在SELECT 语句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出连接时有助于将连接操作与WHERE子句中的搜索条件区分开来。所以,在Transact-SQL中推荐使用这种方法。 SQL-92标准所定义的FROM子句的连接语法格式为: FROM join_table join_type join_table [ON (join_conditio转载 2016-08-11 16:44:11 · 6148 阅读 · 0 评论 -
深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
1、内联接(典型的联接运算,使用像 = 或 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students和courses表中学生标识号相同的所有行。 2、外联接。外联接可以是左向外联接、右向外联接或完整外部联接。 在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定: 1)LEFT JOIN或LEFT OU转载 2016-08-11 16:41:52 · 12979 阅读 · 0 评论 -
to_char()----用法
select to_char(registertime,'yyyy-mm-ddhh24:mi:ss') from STUDENT tselect to_char('22','$099,999.9990') from student $000,022.0000----------------------------原创 2016-08-10 10:18:53 · 515 阅读 · 0 评论 -
oracle中的(+)表示外连接,总是放在从表(非主表)的一方
例如: ----------------------------- 左外连接: selectA.a,B.a from A LEFT JOIN B ON A.b=B.b;等价于 selectA.a,B.a from A,B where A.b = B.b(+);再举个例子,这次是--------------右外连接: selectA.a,B.a fr原创 2016-08-10 10:21:21 · 793 阅读 · 0 评论 -
Oracle 字符串拼接--concat/||
方法1: select concat(concat(name,' '),score)------------------ concat: 在oracle中只可以连接两个字符 from STUDENTt 方法2: select name||' '||scorefrom student select name||' '||coursenamefrom原创 2016-08-10 10:13:52 · 1749 阅读 · 0 评论 -
JDBC连接DB
JDBC的步骤以及具体编码 //a、加载注册驱动Class.forName("oracle.jdbc.driver.OracleDriver");------------------------------oracle-------------------------------- 驱动:oracle.原创 2016-08-10 10:54:04 · 478 阅读 · 0 评论 -
Oracle产生随机数
ORACLE的PL/SQL提供了生成随机数和随机字符串的多种方式,罗列如下:1、小数( 0 ~ 1) select dbms_random.value from dual2、指定范围内的小数 ( 0 ~ 100 ) select dbms_random.value(0,100) from dual3、指定范围内的整数 (转载 2016-08-10 11:19:05 · 367 阅读 · 0 评论 -
ORACLE 删除重复数据
比如现在有一人员表 (表名:peosons) (1)若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来 select p1.* from persons p1,persons p2 where p1.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address = p转载 2016-08-10 11:50:35 · 527 阅读 · 0 评论 -
Oracle中的-------NVL( )函数
Oracle中通用函数: 主要有:NVL, NVL2, NULLIF, COALESCE,这几个函数用在各个类型上都可以。在介绍这个之前你必须明白什么是oracle中的空值null1.NVL()函数NVL函数的格式如下: NVL(expr1,ex原创 2016-08-10 11:07:40 · 8891 阅读 · 0 评论 -
Oracle 不支持 TOP 关键字
Oracle 不支持 TOP 关键字:不过这个好像并不十分严重,因为它提供了 rownum 这个隐式游标,可以实现与 TOP 类似的功能,如:SELECT TOP 10 ... FROM WHERE ...要写成SELECT ... FROM ... WHERE ... AND rownum rownum 是记录序号(1,2,3...),但有一个比较麻烦的事情是:如原创 2016-08-10 12:24:16 · 4270 阅读 · 0 评论 -
Oracle排序
order by 默认情况下是升序排列deptno是降序排列select * from dept order by desc;先进行过滤,在进行排序(除deptno为10的部门)SQL>select ename,empno from emp where deptnoSQL>select ename,sal,deptno from emp order by原创 2016-08-10 10:39:14 · 892 阅读 · 0 评论 -
sql与oracle中有关case和decode的用法(行转列)及比较
为了举例说明,这里创建了一张成绩表,如下图所示: 比较: 1、sql中,这两个函数我们仅能使用case,代码及结果如下: select name, case Subject when '语文' then 1 when '数学' then 2 when转载 2016-08-10 14:35:14 · 319 阅读 · 0 评论 -
like语句
like 的通配符有两种 %(百分号):代表零个、一个或者多个字符。 _(下划线):代表一个数字或者字符。 1. name以"李"开头where name like '李%' 2. name中包含"云",“云”可以在任何位置where name like '%云%' 3. 第二个和第三个字符是0的值where sala原创 2016-08-10 14:46:37 · 625 阅读 · 0 评论 -
to_number() ----函数的用法
1 用法简介TO_NUMBER函数()是Oracle中常用的类型转换函数之一,主要是将字符串转换为数值型的格式,与TO_CHAR()函数的作用正好相反。To_number函数的格式如下:To_number(varchar2 or char,’format model’)1To_number函数中也有很多预定义的固定格式:格式值含义转载 2016-08-10 23:57:21 · 39849 阅读 · 0 评论 -
SQL ----update 多连接 通过订单--是否是新品
订单中是新品还是不是新品select isnull((SELECT CASE WHEN COUNT(IBB003)>1 THEN '否' else '是' END FROM DCSIBB A WHERE A.IBB003=DCSIBB.IBB003 and A.IBB001<>DCSIBB.IBB001 GROUP BY A.IBB003),'是')FROM DCSIBB...原创 2019-01-23 08:22:22 · 207 阅读 · 0 评论