DMSQL TOP子句

eric0435發表於2020-03-02

在DM中,可以使用TOP子句來篩選結果。語法如下:
::=TOP
| < ,>
| PERCENT
| WITH TIES
| PERCENT WITH TIES
::=整數(>=0)
引數
1. TOP 選擇結果的前n條記錄。
2. TOP , 選擇第n1條記錄之後的n2條記錄。
3. TOP PERCENT 表示選擇結果的前n%條記錄。
4. TOP PERCENT WITH TIES 表示選擇結果的前n%條記錄,同時指定結果集可以返回額外的行。額外的行是指與最後一行以相同的排序
鍵排序的所有行。WITH TIES必須與ORDER BY子句同時出現,如果沒有ORDER BY子句,則忽略WITH TIES。

例如查詢現價最貴的兩種產品的編號和名稱。

SQL> SELECT TOP 2 PRODUCTID,NAME FROM PRODUCTION.PRODUCT
2   ORDER BY NOWPRICE DESC;
LINEID     PRODUCTID   NAME
---------- ----------- -------------------
1          10          噼裡啪啦叢書(全7冊)
2          6           長征
used time: 2.906(ms). Execute id is 39552.

例如查詢現價第二貴的產品的編號和名稱。

SQL> SELECT TOP 1,1 PRODUCTID,NAME FROM PRODUCTION.PRODUCT
2   ORDER BY NOWPRICE DESC;
LINEID     PRODUCTID   NAME
---------- ----------- ----
1          6           長征
used time: 2.768(ms). Execute id is 39555.

例如查詢最新出版日期的70%的產品編號、名稱和出版日期。

SQL> SELECT TOP 70 PERCENT WITH TIES PRODUCTID,NAME,PUBLISHTIME FROM PRODUCTION.PRODUCT ORDER BY PUBLISHTIME DESC;
LINEID     PRODUCTID   NAME                               PUBLISHTIME
---------- ----------- ---------------------------------- -----------
1          7           資料結構(C語言版)(附光碟)      2007-03-01
2          5           魯迅文集(小說、散文、雜文)全兩冊 2006-09-01
3          6           長征                               2006-09-01
4          3           老人與海                           2006-08-01
5          8           工作中無小事                       2006-01-01
6          4           射鵰英雄傳(全四冊)               2005-12-01
7          2           水滸傳                             2005-04-01
8          1           紅樓夢                             2005-04-01
8 rows got
used time: 1.776(ms). Execute id is 39590.

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26015009/viewspace-2678139/,如需轉載,請註明出處,否則將追究法律責任。

相關文章