當前位置:首頁 » 編程語言 » sql怎麼取出第二十行
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql怎麼取出第二十行

發布時間: 2023-06-07 07:00:48

sql 一個表裡已經 有20行數據 ,然後要從另一個表裡隨機抽取20條 覆蓋掉之前的數據

如果表結構一樣。

首先嘛

DELETE FROM 那個只有20行數據的表

然後隨機插入

由於 TOP - N 的處理, 與 隨機抽取 , 各個資料庫處理的 方式各不相同, 下面是不同資料庫的處理辦法:

Oracle:

INSERT INTO 空白表
SELECT *
FROM
(
SELECT * FROM 有數據的表 ORDER BY dbms_random.value
) subQuery
where rownum <= 20;

DB2:

INSERT INTO 空白表
SELECT *
FROM 有數據的表

ORDER BY rand()
fetch first 20 rows only;

SQL Server:

INSERT INTO 空白表
SELECT TOP 20 *
FROM 有數據的表
ORDER BY
newid();

MySQL :

INSERT INTO 空白表

select *
FROM 有數據的表
ORDER BY rand() LIMIT 0, 20;

SQLite :

INSERT INTO 空白表
select *
FROM 有數據的表
ORDER BY RANDOM() LIMIT 0, 20;

㈡ sql server和oracle中查詢結果返回指定行數的語句

SQL Server下查詢結果返回指定行用top命令。

如查詢proct表中的5行數據:

selecttop5*fromproct;

㈢ 怎麼使用sql server查詢顯示第10條到第20條信息

1、sql查詢前10條數據:

select top 10 * from tablename where 1=1;1

2、oracle查詢前10條數據:

select * from tablename where rownum<=10;1

oeacle中沒有top,使用的是rownum,下面是關於rownum的介紹:

================================

rownum是Oracle從8開始提供的一個偽列,是把SQL出來的結果進行編號,始終從1開始,常見的用途就是用來分頁輸出.

select * from tablename where rownum<亂姿=10;1

rownum也可以實現數據分頁查詢:

SELECT *

FROM (SELECT a.*, ROWNUM rn

FROM tablename a)

WHERE rn >= 10 AND rn <= 201234567

這嘩慶絕條語句即是輸出第10到第20條紀錄,這里之所差春以用rownum rn,是把rownum轉成實例,因為rownum本身只能用 <=的比較方式,只有轉成實列,這樣就可做 >=的比較了。

㈣ 在SQL中怎樣查詢一個表的第20條數據到30條數據

1、創建測試表,

create table test_order(id number , value varchar2(20));