分页支持在 DB2 中可用 z/OS 但在 DB2/400 中不可用?
Pagination support available in DB2 for z/OS but not in DB2/400?
我知道 LIMIT 和 OFFSET,它们在两个 DB2 中都可用,但根据我的要求,我需要使用 WHERE。
DB2/ZOS12个支持...
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
DB2 有 3 个完全不同的平台
- Db2 z/OS
- 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')
我知道 LIMIT 和 OFFSET,它们在两个 DB2 中都可用,但根据我的要求,我需要使用 WHERE。
DB2/ZOS12个支持...
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
DB2 有 3 个完全不同的平台
- Db2 z/OS
- 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')