茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1672360 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_00007.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

DB研討會 : [分享]SQL SELECT TOP Clause

發表者 討論內容
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15771
[分享]SQL SELECT TOP Clause
SQL SELECT TOP Clause

The SELECT TOP clause is used to specify the number of records to return.

The SELECT TOP clause can be very useful on large tables with thousands of records. Returning a large number of records can impact on performance.

Note: Not all database systems support the SELECT TOP clause.
SQL Server / MS Access Syntax
SELECT TOP number|percent column_name(s) FROM table_name;

SQL SELECT TOP Equivalent in MySQL and Oracle
MySQL Syntax
SELECT column_name(s) FROM table_name LIMIT number;

Example
SELECT * FROM Persons LIMIT 5;

Oracle Syntax
SELECT column_name(s) FROM table_name WHERE ROWNUM <= number;

Example
SELECT * FROM Persons WHERE ROWNUM <=5;

The following SQL statement selects the two first records from the "Customers" table:
Example
SELECT TOP 2 * FROM Customers;

SQL SELECT TOP PERCENT Example
The following SQL statement selects the first 50% of the records from the "Customers" table:
Example
SELECT TOP 50 PERCENT * FROM Customers;


原文出處:SQL SELECT TOP, LIMIT, ROWNUM
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15771
[轉貼]PL/SQL - MS SQL 有 Top N 那 Oracle 呢!?

PL/SQL - MS SQL 有 Top N 那 Oracle 呢!?..

摘要:PL/SQL - MS SQL 有 Top N 那 Oracle 呢!?..

最近因為專案的關係開始接觸 Oracle 資料庫,坦白說以前就想接觸了,但因為都沒有專案跟 Oracle 有關因而作罷,畢竟在沒有需求的時候花錢去上課,到頭來還是會淪為重聽或者遺忘。閒話不多說,在 MS SQL 中取幾筆都是用 TOP N,在 Oracle 則是使用「Where ROWNUM <= N」,以下就來看

MS SQL:

Select Top 100 * From TestTable


Oracle:

Select * From TestTable Where ROWNUM <= 100;

※注意:Where ROWNUM > 100 是不允許的喔,為什麼請參考以下的連結,您會更清楚...

參考:(有興趣的看倌,可以好好看一下參考中的連結來更了解 Where ROWNUM <= N)
On ROWNUM and Limiting Results
Rownum搭配Order by

實現 Oracle 上的分頁顯示 [精華]
[轉] 解析oracle的ROWNUM -- 作者: chen_liang


原文出處:PL/SQL - MS SQL 有 Top N 那 Oracle 呢!?.. | 張小呆的碎碎唸 - 點部落
冷日
(冷日)
Webmaster
  • 註冊日: 2008/2/19
  • 來自:
  • 發表數: 15771
[轉貼]SQL Server 的 TOP n 在 Oracle 要怎使用?
[KB] SQL Server的TOP n在 Oracle要怎使用?

在SQL Server中,我們要取得某些條件的前幾筆,可以透過TOP n去取得:
Select Top 1 * from Table1 Where ID = '9527'

在Oracle中,就沒有辦法使用TOP,而是要改用rownum去作處理
SELECT         * FROM
(
  SELECT         *
  FROM           Table1
  WHERE          (ID = '9527')
)
WHERE         (ROWNUM < 2)

取第一筆就用ROWNUM<2, 前兩筆則是ROWNUM<3

原文出處:[KB] SQL Server的TOP n在 Oracle要怎使用? | Response.Write("Hello LOLOTA") - 點部落
前一個主題 | 下一個主題 | 頁首 | | |



Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|