2016-12-13 166 views
2

阅读分批排在MySQL中,如果我有一次看10行,我可以写查询作为从雪花

select * from foo limit 10, 10 

然后我可以去增加偏移和读取整个表。

我该如何在雪花中做同样的事情?

我试图

select a, b from (select a, b from foo) tempview where rownum <= 100; 

但这不起作用。

回答

2

雪花支持非常类似的语法到MySQL,只要简单的写

select * from foo limit 10 offset 10; 

结帐的Snowflake documentation for LIMIT更多详细信息和选项。

注意 - 如果您想要像这样扫描一个表格,对于大型表格,它可能并不总是最有效的方式,因为您会看到每个查询的一些开销。迭代客户端的结果可能是更好的选择。最后,如果您想迭代复杂查询的结果,并且由于某种原因您确实想使用LIMIT方法,则可以运行查询,然后使用RESULT_SCAN遍历结果。这样您就不会多次重新运行查询。