【问题标题】:TeraData equivalence for limit offset SQL - PAGED限制偏移 SQL 的 TeraData 等效项 - PAGED
【发布时间】:2021-11-27 01:37:35
【问题描述】:

在 MySQL 和其他引擎中,我使用以下类型的语句:

SELECT reference FROM table WHERE field = 'iphone' ORDER BY reference LIMIT 2  OFFSET  0;

但在 TeraData 中,我找不到执行分页查询的等效项。

我很欣赏你的想法;)

【问题讨论】:

标签: teradata limit offset teradatasql


【解决方案1】:

我找到了这个选项

1.

SELECT RANK(reference) as row_num, reference 
  FROM table 
 WHERE field = 'iphone'
ORDER BY 1
QUALIFY row_num  BETWEEN 2 and 4;
SELECT  RANK() OVER (ORDER BY reference) as row_num, reference 
  FROM table 
 WHERE field = 'iphone'
QUALIFY row_num  BETWEEN 2 and 4;

但我不确定哪个是最好的

【讨论】:

  • 在没有限定条件的情况下运行选择,您应该能够很快看到差异。
  • #1 是传统的 TD 特定语法; #2 是首选。请注意,如果有重复的 ORDER BY 值,您可能无法准确获得您期望的行数(但至少您不应该跳过或重复行,因为重复的行都将被分配相同的 RANK)
猜你喜欢
  • 2011-12-19
  • 2012-03-04
  • 2014-09-14
  • 2015-06-27
  • 2015-06-13
  • 1970-01-01
  • 2015-10-24
  • 2012-08-05
  • 2015-10-08
相关资源
最近更新 更多