标签: explain

MongoDB:$ match和$ explain

我有以下查询:

uno = db.prueba.aggregate(
    {$project: {a_gt_b: {$cmp: ['$num-a','$num-b']}}},
    {$match: {a_gt_b:{$gt:0}}},
    {$group:{"_id":"$a_gt_b",total:{"$sum":1}}},
    {$project: {"_id":0,"total":1}}
);
Run Code Online (Sandbox Code Playgroud)

我想执行$ explain命令,根据这个答案, 我必须采取$ match部分,但我不知道如何.

mongodb explain nosql aggregation-framework

1
推荐指数
1
解决办法
124
查看次数

当签入解释计划时,MYSQL 使用 JOIN TYPE 'ALL'

查询如下,

select *
from lab this_ 
inner join visits v1_ on this_.visit_id=v1_.id
Run Code Online (Sandbox Code Playgroud)

v1_.id 是查询中的主键。

完成需要1分多钟。

下面是计划。

id   select_type   table   type  possible_keys  key       
1      SIMPLE       v1_     ALL    <null>      <null>
1      SIMPLE      this_    ALL    <null>      <null>
Run Code Online (Sandbox Code Playgroud)

不知道为什么主键被选为键。类型也是 ALL。

mysql explain

1
推荐指数
1
解决办法
1217
查看次数

索引 VARCHAR 的 key_len

-- 2 Moderators: please do not re-format my code

DROP TABLE IF EXISTS `t`;

CREATE TABLE `t` (
      `v` VARCHAR(3) NOT NULL COLLATE 'latin1_general_ci'
    , `c` CHAR(3)    NOT NULL COLLATE 'latin1_general_ci'
    , INDEX `IX_t_v` (`v`)
    , INDEX `IX_t_c` (`c`)
)
;


INSERT INTO t
      (v, c)
VALUES
      ('001', '001')
    , ('002', '002')
    , ('003', '003')
    , ('004', '004')
;

EXPLAIN SELECT c FROM t WHERE c = '001';

EXPLAIN SELECT v FROM t WHERE v = '001';
Run Code Online (Sandbox Code Playgroud)

解释命令给了我:

id  select_type …
Run Code Online (Sandbox Code Playgroud)

mysql varchar explain

1
推荐指数
1
解决办法
177
查看次数

如何优化查询?我能读什么,了解它?(俄语,如果你可以,或英语)

现在我的MYSQL查询如下.

但在700个项目中,50个参数和12000个项目参数.外键创建,但创建索引 - 我不知道:(查询需要45秒以上.它太大了,因为我在一些论坛上阅读,即使我想每隔5分钟在CRON中进行一次.

如何优化该查询?以及我想创建哪些索引?以及如何理解这个过程?谢谢.

  SELECT
        `tt1`.`id` `projects_id`,
        `tt2`.`projectparams_id`,
        `tt2`.`defaultvalue`,
        `tt2`.`defaultvaluealias`,
        `tt2`.`globalvalue`,
        `tt2`.`globalvaluealias`,
        `tt2`.`value`,
        `tt2`.`valuealias`
    FROM
        `projects` `tt1`
    LEFT JOIN
    (
        SELECT
            `t1`.`id` `projectparams_id`,
            `t1`.`defaultvalue`,
            `t1`.`defaultvaluealias`,
            `t1`.`globalvalue`,
            `t1`.`globalvaluealias`,
            `t2`.`value`,
            `t2`.`valuealias`,
            `t2`.`projects_id`
        FROM
            `projectparams` `t1`
        LEFT JOIN `projects_projectparams` `t2` ON `t2`.`projectparams_id` = `t1`.`id`
    ) tt2 ON `tt1`.`id` = `tt2`.`projects_id`
Run Code Online (Sandbox Code Playgroud)

mysql sql database optimization explain

0
推荐指数
1
解决办法
46
查看次数

Python 3 最短的 quine。我不明白

_='_=%r;print (_%%_) ';print (_%_)
Run Code Online (Sandbox Code Playgroud)

(编辑:我已收到您的输入并修复了代码,感谢您的更正。)

这是您可以用 Python 编写的最短的 quine(有人告诉我)。一个返回自身的代码。

有人可以像我对 Python 一无所知一样向我解释这行代码吗?顺便说一下,我使用 Python 3.x。

我正在寻找的是对正在发生的事情的逐字解释。

谢谢。

python quine explain

0
推荐指数
1
解决办法
588
查看次数

嵌套循环左连接花费太多时间?

这是query

EXPLAIN (analyze, BUFFERS, SETTINGS)
SELECT
    operation.id
FROM
    operation
RIGHT JOIN(
    SELECT uid, did FROM (
            SELECT uid, did FROM operation where id = 993754
        ) t
    ) parts ON (operation.uid = parts.uid AND operation.did = parts.did)
Run Code Online (Sandbox Code Playgroud)

EXPLAIN信息:

Nested Loop Left Join  (cost=0.85..29695.77 rows=100 width=8) (actual time=13.709..13.711 rows=1 loops=1)
  Buffers: shared hit=4905
  ->  Unique  (cost=0.42..8.45 rows=1 width=16) (actual time=0.011..0.013 rows=1 loops=1)
        Buffers: shared hit=5
        ->  Index Only Scan using oi on operation operation_1  (cost=0.42..8.44 rows=1 width=16) …
Run Code Online (Sandbox Code Playgroud)

postgresql performance explain

0
推荐指数
1
解决办法
3675
查看次数