Oracle DatabaseOracle數據庫入門


備註

Oracle是一個關係數據庫管理系統(RDBMS),最初由Larry Ellison,Bob Miner和Ed Oates在70年代後期建立。它旨在與IBM的System R兼容。

版本

發布日期
版本1(未發布) 1978年1月1日
Oracle V2 1979-01-01
Oracle版本3 1983年1月1日
Oracle Version 4 1984-01-01
Oracle版本5 1985-01-01
Oracle版本6 1988-01-01
Oracle7中 1992-01-01
在Oracle8 1997-07-01
Oracle8i中 1999-02-01
Oracle9i中 2001-06-01
Oracle 10g 2003-01-01
Oracle 11g 2007-01-01
Oracle 12c 2013-01-01

你好,世界

SELECT 'Hello world!' FROM dual;
 

在Oracle的SQL風格中, “雙重只是一個便利表” 。它原本打算通過JOIN加倍行,但現在包含一行DUMMY 值為'X'。

來自PL / SQL的Hello World

/* PL/SQL is a core Oracle Database technology, allowing you to build clean, secure, 
   optimized APIs to SQL and business logic. */

set serveroutput on 

BEGIN
   DBMS_OUTPUT.PUT_LINE ('Hello World!');
END;
 

你好,世界!從表

創建一個簡單的表

create table MY_table (
   what varchar2(10), 
   who varchar2(10), 
   mark varchar2(10)
);
 

插入值(如果為所有列提供值,則可以省略目標列)

insert into my_table (what, who, mark) values ('Hello', 'world', '!' );
insert into my_table values ('Bye bye', 'ponies', '?' );
insert into my_table (what) values('Hey');
 

記得提交,因為Oracle使用事務

commit;
 

選擇您的數據:

select what, who, mark from my_table where what='Hello';
 

SQL查詢

列出本世紀出生的收入超過5萬美元的員工。列出他們的姓名,出生日期和工資,按名稱按字母順序排序。

SELECT employee_name, date_of_birth, salary
FROM   employees
WHERE  salary > 50000
   AND date_of_birth >= DATE '2000-01-01'
ORDER BY employee_name;
 

顯示每個部門至少有5名員工的員工人數。首先列出最大的部門。

SELECT department_id, COUNT(*)
FROM   employees
GROUP BY department_id
HAVING COUNT(*) >= 5
ORDER BY COUNT(*) DESC;