·Oracle(大型网站数据库平台)初学者必知的100个问题
·Oracle(大型网站数据库平台) PL/SQL语言基础
·Oracle(大型网站数据库平台)架构的基础知识(入门级)
·简单的Oracle(大型网站数据库平台)存储过程的创建方法(菜
·Oracle(大型网站数据库平台)中的各种数据类型详细的介绍
·Oracle(大型网站数据库平台)触发器详细介绍
·简单的Oracle(大型网站数据库平台)存储过程的创建方法
·Oracle(大型网站数据库平台)的初学者入门心得
·Oracle(大型网站数据库平台)的nvl函数的用法
·Oracle(大型网站数据库平台)开发中序列的使用
本文参考"Beginning SQL: Differences Between sql server
(WINDOWS平台上强大的数据库平台) and Oracle
(大型网站数据库平台)-A Quick Intro for sql server
(WINDOWS平台上强大的数据库平台) Users",作者Les Kopari 本文比较适合刚接触Oracle
(大型网站数据库平台)的sql server
(WINDOWS平台上强大的数据库平台)开发人员.
I. 简单概念的介绍1. 连接数据库S: use mydatabase O: connect username/password@DBAlias conn username/password@DBAlias 2. 在Oracle
(大型网站数据库平台)中使用Dual, Dual是Oracle
(大型网站数据库平台)一个特有的虚拟表, Oracle
(大型网站数据库平台)中很多系统的变量和函数都可以通过Dual中获得S: select getdate();O: select sysdate from dual; 3. Select Into和Insert 语句的使用, 在sql server
(WINDOWS平台上强大的数据库平台)中的Select Into语句在Oracle
(大型网站数据库平台)中一般是Insert into…select…, 另外2个数据库都支持标准的SQL, 写法上略有区别S: select getdate() mycolumn into mytable; Insert mytable values(‘more text’);O: insert into mytable select getdate() mycolumn from dualinsert into mytable (mycolumn) values(sysdate); 4. Update语句S: update mytable set mycolumn=myothertable.mycolumn from mytable,myothertable where mytable.mycolumn like 'MY%' and myothertable.myothercolumn='some text';O: update mytable set mycolumn= (select a.mycolumn from myothertable a where myothertable.myothercolumn='some text')where mytable.mycolumn like 'MY%'; 5. Delete语句S: delete mytable where mycolumn like 'some%';O: delete from mytable where mycolumn like 'some%'; 6. 使用开发管理的软件S: isqlosql: for queries developed in SQL Analyzersql server
(WINDOWS平台上强大的数据库平台) Management Studio Express 图形化管理工具O: sqlplus PL/SQL Developer 图形化开发管理工具 TOAD 图形化开发管理工具 注: 个人建议基本的简单的Select, Update, Delete使用标准的SQL语句,如SQL92或SQL99的定义
II. 一些细节问题: Joins, Subqueries, Deletes 1. Outer Join 外连接S: select d.deptname, e.ename from dept d, emp e where d.empno *= e.enum;O: select d.deptname,e.ename from dept d, emp e where d.empno = e.enum (+); 2. SubQueries in Place of ColumnsS: select distinct year, q1 = (select Amount amt FROM sales where Quarter=1 AND year = s.year), q2 = (SELECT Amount amt FROM sales where Quarter=2 AND year = s.year), q3 = (SELECT Amount amt FROM sales where Quarter=3 AND year = s.year), q4 = (SELECT Amount amt FROM sales where Quarter=4 AND year = s.year) from sales s;O: SELECT year, DECODE( quarter, 1, amount, 0 ) q1, DECODE( quarter, 2, amount, 0 ) q2, DECODE( quarter, 3, amount, 0 ) q3, DECODE( quarter, 4, amount, 0 ) q4 FROM sales s; 3. Delete with Second From ClauseS: delete from products, product_deleteswhere products.a = product_deletes.a and products.b = product_deletes.b and product_deletes.c = 'd';O: delete from productswhere (a, b ) in(select a, b from product_deletes where c = 'd' );