DB2 for z / OS中提供但不是DB2 / 400中的分页支持?

时间:2017-09-26 21:46:08

标签: pagination db2 db2-400

我知道LIMIT和OFFSET,这两个版本都可用,但是根据我的要求,我需要使用WHERE。

DB2 / ZOS 12支持...

WHERE (WORKDEPT, EDLEVEL, JOB) > ('E11', 12, 'CLERK')

但显然不是DB2 / 400?

请有人告诉我,我错了。

参考

DB2 / ZOS https://www.ibm.com/support/knowledgecenter/en/SSEPEK_12.0.0/wnew/src/tpc/db2z_12_sqlpagination.html

DB2 / 400 https://www.ibm.com/support/knowledgecenter/en/ssw_ibm_i_73/sqlp/rbafymultiplewhere.htm

1 个答案:

答案 0 :(得分:1)

DB2有三个完全不同的平台

  • 适用于z / OS的Db2
  • IBM i的Db2
  • DB2 for Lunix,Unix,Windows(LUW)

尽管共享了DB2名称,但它们是完全独立的产品,具有不同的代码库。

IBM确实尝试确保兼容性,但这并不意味着每个平台都具有相同的功能或同时获得新功能。

所以不,Db2 for i当前不支持WHERE中的非等值行值表达式。你将不得不去上学。

WHERE 
  (WORKDEPT = 'E11' and EDLEVEL = 12 and JOB > 'CLERK)
  or (WORKDEPT = 'E11' and EDLEVEL > 12) 
  or (WORKDEPT > 'E11')