Snowflake cloud data platform 雪花-根据暂存区域中的主键选择唯一行

Snowflake cloud data platform 雪花-根据暂存区域中的主键选择唯一行,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,在本例中,我使用csv文件创建了暂存区域,该csv文件有两行具有相同主键值5,另一行具有值6。有没有一种方法可以让我运行一个select查询,该查询用于以后的复制,以获取主键为5的最后一行和主键为6的行?总共只返回两个唯一的主键行,最好是最后一个 在我将文件放入暂存区域后,我知道要获取我的列和值,我将运行以下操作: 从@MY_STAGE FILE_FORMAT=>“csv”t中选择t.$1、t.$2、t.$3、t.$4,将按顺序获取所有3行及其各自的列和值。是否有一种方法可以改进查询以返回两行,

在本例中,我使用csv文件创建了暂存区域,该csv文件有两行具有相同主键值5,另一行具有值6。有没有一种方法可以让我运行一个select查询,该查询用于以后的复制,以获取主键为5的最后一行和主键为6的行?总共只返回两个唯一的主键行,最好是最后一个

在我将文件放入暂存区域后,我知道要获取我的列和值,我将运行以下操作: 从@MY_STAGE FILE_FORMAT=>“csv”t中选择t.$1、t.$2、t.$3、t.$4,将按顺序获取所有3行及其各自的列和值。是否有一种方法可以改进查询以返回两行,一行使用主键5,另一行用于键6

提前感谢。

这可能会有帮助:

select Distinct * from @MY_STAGE( FILE_FORMAT => 'csv') t
或按主键顺序划分的行数,按=1


具有相同主键的两行是否完全相同,或者某些值是否不同,例如如果主键为5,其他一些列是否具有不同的值

您好,感谢您的快速响应,至少一个或多个其他列值将具有不同的值,但主键相同。所以理想情况下,抓取最后一个将是匹配主键行之间最新的值。好的,然后我建议您使用这种方法:按主键顺序划分的行数By=1如果您有时间戳或任何数值之类的内容,则使用它,并在Order By子句中加上应该给出您可以选择rownumber为1的最新一行,请花点时间阅读中的。堆栈溢出上的格式设置与其他站点不同。