找到 1660 篇文章 关于大数据分析

如何查找 ORDERS DB2 表中 ORDER_TOTAL 大于 ORDER_TOTAL 平均值的所有订单的 ORDER_ID?

Mandalika
更新于 2020-11-30 09:32:42

158 次查看

我们可以使用子查询查找所有 ORDER_TOTAL 大于 ORDERS 表中所有 ORDER_TOTAL 平均值的 ORDER_ID。例如,如果我们有以下 ORDERS 表。ORDER_IDORDER_TOTALA223451867A629985634A569027615A5691187960A56915132A5691880363以下是查找所需数据的子查询示例。SELECT ORDER_ID, ORDER_TOTAL FROM ORDERS    WHERE ORDER_TOTAL > (SELECT AVG(ORDER_TOTAL) FROM ORDERS)以上查询的结果如下。ORDER_IDORDER_TOTALA2234587960A6299880363

当锁数量超过限制时,COBOL-DB2 程序的行为

Mandalika
更新于 2020-11-30 09:31:38

803 次查看

问题:当表空间上放置的锁数量超过定义的限制时,COBOL-DB2 程序将如何运行?解决方案应用程序可以对 DB2 资源(如页面、表行等)放置的锁数量在 DSNZPARM 中定义。一旦任何表中页面和行级锁的数量超过允许的限制,就会发生锁升级。在锁升级中,DB2 会释放它持有的页面或行级锁,并尝试获取表空间级或更高级别的锁。在这种情况下,应用程序现在对 DB2 具有更广泛的访问/范围... 阅读更多

如何查找优化器为特定查询选择的访问路径?

Mandalika
更新于 2020-11-30 09:30:38

256 次查看

DB2 优化器在数据库的整体性能中发挥着重要作用。优化器通过该路径从数据库中获取数据,为每个查询选择最佳的访问路径。它识别要遵循的索引、查询谓词等。优化器自动选择访问路径,我们可以使用 EXPLAIN DB2 命令轻松找到访问路径。我们必须首先设置查询编号,然后提供 SQL 查询以通过三个简单的步骤查找其访问路径。例如,我们有一个 DB2 ORDERS 表,并且我们想检查具有... 阅读更多

ROW-ID 和 SEQUENCE 在 DB2 中的用途和用法

Mandalika
更新于 2020-11-30 09:29:16

1K+ 次查看

问题:如何在 DB2 列中为每插入的新行自动生成唯一值?解决方案我们可以在 DB2 表中实现一个逻辑,通过该逻辑我们可以有一个列,该列将为每插入的新行自动生成一个值。此列可以用作主键,因此对于 DB2 表的随机访问非常有用。此逻辑可以通过 ROW-ID 和 SEQUENCE 实现。DB2 表的任何一列都可以定义为 ROW-ID 类型,之后 DB2 将自动分配一个新的... 阅读更多

借助示例说明子查询在 DB 中的用途和用法

Mandalika
更新于 2020-11-30 09:27:33

129 次查看

问题:什么是 DB2 子查询,子查询有什么用?借助 ORDERS 表上的示例解释子查询。解决方案DB2 中的子查询是在查询中的查询,即嵌套查询。子查询先执行,然后执行其父查询。我们可以最多有 15 个级别的子查询。例如,如果我们在 DB2 中有以下 ORDERS 表。ORDER_IDORDER_TOTALZ223451267Z629986734Z569028815Z5691178990Z56915432Z5691877453如果我们想从 ORDERS 表中提取 ORDER_TOTAL 超过整体平均值的所有订单,则可以使用以下子查询。示例SELECT ORDER_ID FROM ORDERS WHERE ORDER_TOTAL > (SELECT AVG(ORDER_TOTAL) FROM ORDERS)该... 阅读更多

在 DB2 表上使用 OUTER JOIN 的限制是什么?

Mandalika
更新于 2020-11-30 09:26:31

427 次查看

OUTER JOIN 的结果包括 WHERE 子句中匹配的行和不匹配的行。DB2 中的 OUTER JOIN 主要有两个限制。OUTER JOIN 的 WHERE 子句只能具有“=”关系运算符。在两个或多个表的 OUTER JOIN 的情况下,不允许使用等。此外,WHERE 子句中的两个或多个条件只能与 AND 逻辑运算符一起使用,其他逻辑运算符(如 OR、NOT)不允许使用。处理 NULL 运算符的函数(如 VALUE 和 COALESCE)不能与 OUTER JOIN 一起使用。例如,如果我们有以下 2... 阅读更多

如何为用户提供和取消对 DB2 对象的访问权限?给出 DB2 命令?

Mandalika
更新于 2020-11-30 09:25:20

589 次查看

DB2 具有 DCL 的概念,通过该概念我们可以控制对 DB2 对象(如表、计划等)的访问。DCL 代表数据控制语言,使用它我们可以为用户提供和取消对 DB2 对象的访问权限。GRANT 命令将授予用户对所提及对象的访问权限,而 REVOKE 命令将取消用户的访问权限。例如,如果我们必须为用户 REL123X 提供 ORDERS 表上的 SELECT 和 UPDATE 访问权限,我们将发出以下命令。GRANT SELECT, UPDATE ON ORDERS TO REL123X如果我们想提供 INSERT 访问权限,我们将使用以下命令。GRANT ... 阅读更多

即使在回滚后,如何保持对资源的锁定?

Mandalika
更新于 2020-11-30 09:23:42

211 次查看

当任何应用程序使用表、表空间等资源时,DB2 会对这些资源进行锁定。在 COBOL-DB2 程序中,如果我们正在修改或删除表中的数据,则 DB2 会放置锁。当我们给出 ROLLBACK 语句以恢复数据库中所做的更改时,默认情况下会释放 DB2 持有的所有锁。如果我们希望即使在回滚后也保持对资源的锁定,则必须使用 ON ROLLBACK RETAIN LOCKS 而不是 ROLLBACK。例如,考虑一个使用 FOR UPDATE OF 子句声明的游标 ORDER_CUR。因此,一旦... 阅读更多

SAVEPOINT 在 COBOL-DB2 程序中的用途和用法

Mandalika
更新于 2020-11-30 09:22:26

2K+ 次查看

问题:如何在 DB2 中使用 SAVEPOINT?SAVE-POINT 在 DB2 中的用途是什么?举例说明。解决方案SAVEPOINT 用于作为标记或标签来保存未提交到数据库的更改。在对数据库进行更改后,我们可以提供一个名为 SAVEPOINT 的语句,然后在任何时候我们都可以使用 ROLLBACK 语句将更改回滚到此保存点。实际上,我们可以在 COBOL-DB2 程序中有多个 SAVEPOINT,并且我们可以使用 ROLLBACK 跳回到任何一个 SAVEPOINT。这将恢复所做的所有更改... 阅读更多

什么是 DB2 中的存储过程?如何创建新的存储过程?

Mandalika
更新于 2020-11-30 09:19:19

6K+ 次查看

DB2 存储过程是由 DBMS 直接管理的程序。存储过程通常包含 SQL,并且可以由应用程序程序调用。存储过程处理查询并将结果返回给应用程序程序。存储过程可以用于经常使用的 SQL,因此,与其一遍又一遍地使用相同的 SQL 查询,不如简单地使用存储过程。存储过程的另一个好处是,与应用程序程序中使用的静态 SQL 相比,它们速度快且性能良好。存储过程可以... 阅读更多

广告