如何根据SQL中的行数对表进行子集化?

时间:2019-04-09 14:24:49

标签: sql-server

我是使用SQL的新手,我有一个由40,000,000行和30列组成的大型数据框。我可以使用什么代码将数据子集化成包含5,000,000行的表。

我尝试使用以下代码:

config.client

但是我不知道如何更改我的代码,以允许我生成带有其他行的表。

1 个答案:

答案 0 :(得分:0)

如果这是一次性的练习,请尝试运行8条语句来更改"ch:r=-0.2,d=0.3" offset的值。 fetch跳过提供的行数,而offset返回跳过后指示的行数:

fetch

然后

SELECT [X],
           ,[Y]
           ,[Z]
INTO [NEW_TABLE1]
FROM [OLD_TABLE]
ORDER BY [X] -- Or whatever your primary key column is
         OFFSET 0 ROWS
         FETCH NEXT 5000000 ROWS ONLY

然后

SELECT [X],
           ,[Y]
           ,[Z]
INTO [NEW_TABLE2]
FROM [OLD_TABLE]
ORDER BY [X] -- Or whatever your primary key column is
         OFFSET 5000000 ROWS
         FETCH NEXT 5000000 ROWS ONLY

以此类推...

如果这是一项常规任务,请大喊大叫,我将向您展示如何循环播放。