sqloracle語句
⑴ oracle sql 語句
1. select top 1 *from (select count(BId) as cc from brrow where getdate() between T_time and B_time group by stuID) order by cc desc
2.select a.stuname,b.title,b.T_time,b.B_time from student a join
(select borrow.stuID,borrow.T_time,borrow.B_time,book.title from borrow join book on borrow.BID=book.bid) b on a.stuID =b.stuID
3.select *from student where stuID not in (select stuid from borrow where gedate() >B_time)
4.
go
create proc login
@stuid number(10),
@password varchar2(20),
@re varchar(20) output
as
declare @st number
select @st = stuid from student where stuid=@st
if isnull(@st,0)=0 return '-1'
else if @password = (select password from student where stuid =@stuid) and @password is not null rturn '0'
else return select stuname from student where stuid =@stuid
go
5.go
create function dd()
@bid number(10)
as
if ((select bid from borrow where bid =@bid) is not null )
begin
print '必須先刪除借書信息記錄表中所有對應於該圖書的所有數據'
return
end
delete from book where bid =@bid
go
⑵ oracle 視圖sql語句怎麼寫
方法和詳細的操作步驟如下:
1、第一步,通過pl
/ sql登錄到oracle資料庫,見下圖,轉到下面的步驟。
⑶ oracle資料庫常用sql語句
常用sql語句不分資料庫類型,一般都是select查詢,update更新,insert新增,delete刪除。
⑷ Oracle資料庫sql語句
DML操作(insert
,
delete
,
update)之後,一定要使用commit或rollback命令來結束該事務,否則直接關閉SQL
Plus,資料庫默認rollback之前未提交的事務,所以今天你在select的時候
會顯示未選定行。
而手動輸入commit,rollback
這類的命令,是顯示的提交事務(完成事務)。
如果在DML操作之後未及時顯示的提交,而是又進行了DDL操作(create
alter...),則資料庫會隱式的提交之前未完成的事務。
所以
下次一定要注意哦~~
⑸ oracle sql語句 分為哪些
Oracle SQL語句分類
SQL(Structured Query Language)即結構化查詢語句,應用程序與資料庫交互的介面
集數據操作、數據定義、數據控制等功能於一體
ANSI先後制定推出了SQL-89、SQL-92、SQL-99標准
oracle SQL 語句主要分為一下四類:
DML(Data Mannipulation Language)數據操縱語言:查詢、操縱數據表資料行
SELECT : 檢索資料庫表或視圖數據
INSERT : 將數據行新增至資料庫表或視圖中
UPDATE : 修改表或視圖中現有的數據行
DELETE : 刪除表或視圖中現有的數據行
注意:DML語句不會自動提交事務!
DDL(Data Definition Language)數據定義語言:建立、修改、刪除資料庫中數據表對象
CREATE TABLE : 創建表
ALTER TABLE : 修改表
DROP TABLE : 刪除表
注意:DLL語句會自動提交事務!所以:DML語句事務提交之前可以回滾,DDL語句不能回滾事務
DCL(Data Control Language)數據控制語言:用於執行許可權授予與收回操作
GRANT : 給用戶或角色授予許可權
REVOKE : 收回用戶或角色的所有許可權
TCL(Transactional Control Language)事物控制語言:維護數據的一致性
COMMIT :提交已經進行的資料庫改變
ROLLBACK : 回滾已經進行的數據改變
SAVEPOINT : 設置保存點,用於部分數據改變的取消
⑹ oracle SQL查詢語句
SELECT LPAD(' ',(LEVEL-1)*3)||ename
FROM emp
START WITH ename='SMITH'
CONNECT BY PRIOR empno=mgr ;
SELECT ename
FROM emp
START WITH ename='SCOTT'
CONNECT BY PRIOR mgr=empno
ORDER BY LEVEL DESC ;
SELECT LPAD(' ',(LEVEL-1)*3)||ename
FROM emp
START WITH mgr IS NULL
CONNECT BY PRIOR empno=mgr ;
你問的是ORACLE中層次樹狀查詢,START WITH 。。 CONNECT BY 用法。
START WITH 指明樹的起點。至於是找上級還是下級(也就是你問的),關鍵就在於PRIOR的用
法。PRIOR的意思是前一個。
比如:START WITH ename='SMITH'
CONNECT BY PRIOR empno=mgr ;
的意思:ename='SMITH'表示樹的起點,即第一行
CONNECT BY PRIOR empno=mgr 表示上一行員工的編號是當前行的管理者,即找SMITH的下屬。
START WITH ename='SCOTT'樹的起點,即第一行
CONNECT BY PRIOR mgr=empno 表示上一行員工的管理員編號是當前員工的編號,即找SCOTT的上級及間接上級。
⑺ 寫出相關的Oracle SQL語句
CREATE
PROFILE
sim_profile
LIMIT
(
FAILED_LOGIN_ATTEMPTS
5
PASSWORD_LOCK_TIME
10
);
//第一步,創建概要文件
ALTER
USER
author
PROFILE
sim_profile;
//第二步,指定特定用戶使用概要文件。
參考文檔:
http://www.svn8.com/sql/Oracle/2010043031324.html
⑻ oracle 中的 sql語句查詢
select
lpad('
',(level-1)*3)||ename
from
emp
start
with
ename='smith'
connect
by
prior
empno=mgr
;
select
ename
from
emp
start
with
ename='scott'
connect
by
prior
mgr=empno
order
by
level
desc
;
select
lpad('
',(level-1)*3)||ename
from
emp
start
with
mgr
is
null
connect
by
prior
empno=mgr
;
你問的是oracle中層次樹狀查詢,start
with
。。
connect
by
用法。
start
with
指明樹的起點。至於是找上級還是下級(也就是你問的),關鍵就在於prior的用
法。prior的意思是前一個。
比如:start
with
ename='smith'
connect
by
prior
empno=mgr
;
的意思:ename='smith'表示樹的起點,即第一行
connect
by
prior
empno=mgr
表示上一行員工的編號是當前行的管理者,即找smith的下屬。
start
with
ename='scott'樹的起點,即第一行
connect
by
prior
mgr=empno
表示上一行員工的管理員編號是當前員工的編號,即找scott的上級及間接上級。
⑼ 一個簡單的oracle sql 語句
列印出空值的原因很簡單,oracle中
rownum永遠按照默認的順序生成,並且rownum只能使用<
<=,不能使用>
>=。
可以這樣寫:select
*
2
from
(select
rownum
r,e.*
3
from
(select
*
from
emp
order
by
sal)
e
4
where
rownum
<=8
5
)
6
where
r
>=5;
經過子查詢後,此時的別名r只是一個普通的欄位,就不再是按照默認生成的了
⑽ Oracle sql 語句
select * from (
select row_number() over(partition by buyer order by 排序欄位) rindex , * from tablename
) where rindex>=100
row_number() over(partition by 分組欄位 order by 排序欄位)可實現分組f1-f5後再對每個組進行自定的排序編號,外面再嵌套一層select,直接取排序編號為前100的。