PlannerIMDB — JOB-22A

SELECT MIN(cn.name) AS movie_company,
       MIN(mi_idx.info) AS rating,
       MIN(t.title) AS western_violent_movie
FROM job.company_name AS cn,
     job.company_type AS ct,
     job.info_type AS it1,
     job.info_type AS it2,
     job.keyword AS k,
     job.kind_type AS kt,
     job.movie_companies AS mc,
     job.movie_info AS mi,
     job.movie_info_idx AS mi_idx,
     job.movie_keyword AS mk,
     job.title AS t
WHERE cn.country_code != '[us]'
  AND it1.info = 'countries'
  AND it2.info = 'rating'
  AND k.keyword IN ('murder',
                    'murder-in-title',
                    'blood',
                    'violence')
  AND kt.kind IN ('movie',
                  'episode')
  AND mc.note NOT LIKE '%(USA)%'
  AND mc.note LIKE '%(200%)%'
  AND mi.info IN ('Germany',
                  'German',
                  'USA',
                  'American')
  AND mi_idx.info < '7.0'
  AND t.production_year > 2008
  AND kt.id = t.kind_id
  AND t.id = mi.movie_id
  AND t.id = mk.movie_id
  AND t.id = mi_idx.movie_id
  AND t.id = mc.movie_id
  AND mk.movie_id = mi.movie_id
  AND mk.movie_id = mi_idx.movie_id
  AND mk.movie_id = mc.movie_id
  AND mi.movie_id = mi_idx.movie_id
  AND mi.movie_id = mc.movie_id
  AND mc.movie_id = mi_idx.movie_id
  AND k.id = mk.keyword_id
  AND it1.id = mi.info_type_id
  AND it2.id = mi_idx.info_type_id
  AND ct.id = mc.company_type_id
  AND cn.id = mc.company_id;

Engine Compare

Accuracy chart, rows processed ?
Scan
Scan
Seek
Seek
Join Probe
Join
Sort
Sort
Hash Build
Hash
Aggregate
Agg
Distribute
Dist
Native storage
Estimation Error
Est Err
4,532,756
4.5M
Rank
Estimation Error
Est Err
4,552,109
4.6M
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
100,524
101K
Rank
Estimation Error
Est Err
2,851
2.9K
Rank
Estimation Error
Est Err
0
Rank
Native storage
Estimation Error
Est Err
21,843,202
22M
Rank
Estimation Error
Est Err
23,508,337
24M
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
6,250,160
6.3M
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
0
Rank
Native storage
Estimation Error
Est Err
7,382,517
7.4M
Rank
Estimation Error
Est Err
6,093,309
6.1M
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
2,979,281
3M
Rank
Estimation Error
Est Err
2,853
2.9K
Rank
Estimation Error
Est Err
2,228,329
2.2M
Rank
Apache Iceberg
Estimation Error
Est Err
12,766,635
13M
Rank
Estimation Error
Est Err
12,013,324
12M
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
5,401,678
5.4M
Rank
Estimation Error
Est Err
2,861
2.9K
Rank
Estimation Error
Est Err
726,482
726K
Rank
Native storage
Estimation Error
Est Err
564,059
564K
Rank
Estimation Error
Est Err
789,767
790K
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
1,389,905
1.4M
Rank
Estimation Error
Est Err
2,851
2.9K
Rank
Estimation Error
Est Err
0
Rank
Native storage
Estimation Error
Est Err
95,729
96K
Rank
Estimation Error
Est Err
95,726
96K
Rank
Estimation Error
Est Err
105,888
106K
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
112,976
113K
Rank
Estimation Error
Est Err
2,851
2.9K
Rank
Estimation Error
Est Err
0
Rank
Native storage
Estimation Error
Est Err
912,699
913K
Rank
Estimation Error
Est Err
912,695
913K
Rank
Estimation Error
Est Err
1,011,017
1M
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
949,786
950K
Rank
Estimation Error
Est Err
2,851
2.9K
Rank
Estimation Error
Est Err
0
Rank
Apache Iceberg
Estimation Error
Est Err
1,158,473
1.2M
Rank
Estimation Error
Est Err
936,423
936K
Rank
Estimation Error
Est Err
0
0
Rank
Estimation Error
Est Err
1,387,061
1.4M
Rank
Estimation Error
Est Err
2,867
2.9K
Rank
Estimation Error
Est Err
1,032,259
1M
Rank

Actual Query Plans

Query Plan per Engine ?
Query Plan
Native storage
Estimate    Actual  Operator
       1         1  AGGREGATE min, min, min
       3      2851  INNER JOIN HASH ON id = company_type_id
       4         4  │└TABLE SCAN company_type
       1      2851  INNER JOIN HASH ON id72 = company_id
       1      3223  │└INNER JOIN HASH ON movie_id65 = movie_id57
       2      1507   │└INNER JOIN HASH ON id6 = info_type_id58
       1         1    │└TABLE SCAN info_type WHERE info = rating
       2      1507    INNER JOIN HASH ON id33 = movie_id57
       3      2937    │└INNER JOIN HASH ON id11 = info_type_id
       1         1     │└TABLE SCAN info_type WHERE info = countries
       3      3106     INNER JOIN HASH ON id33 = movie_id49
      11      4832     │└INNER JOIN HASH ON id16 = kind_id
       2         2      │└TABLE SCAN kind_type WHERE kind17 IN(episode,movie)
      34      5014      INNER JOIN HASH ON id33 = movie_id
     129     37091      │└INNER JOIN HASH ON id21 = keyword_id
       4         3       │└TABLE SCAN keyword WHERE keyword IN(blood,murder,murder - in - title,violence)
 4523930   4523930       TABLE SCAN movie_keyword
  639485      3694      TABLE SCAN title WHERE production_year >= 2009
  565032      2216     TABLE SCAN movie_info WHERE info51 IN(American,German,Germany,USA)
 1180576       948    TABLE SCAN movie_info_idx WHERE info < 7.0
  248981      1470   TABLE SCAN movie_companies WHERE note68 LIKE '%(200%)%' AND  NOT (note68 LIKE '%(USA)%')
  120711       487  TABLE SCAN company_name WHERE country_code <> us
Native storage
Estimate    Actual  Operator
       -         1  PROJECT a1 AS movie_company, a2 AS rating, a3 AS western_violent_movie
       -         1  AGGREGATE MIN(name) AS a1, MIN(info) AS a2, MIN(title) AS a3
       -         0  PROJECT name, info, title
       -         0  PROJECT name, info, title
       -         0  INNER JOIN HASH ON tuple(PROJECTION_2309.movie_id,PROJECTION_2309.movie_id,PROJECTION_2309.movie_id,PROJECTION_2309.movie_id,PROJECTION_2309.id,PROJECTION_2309.id) = tuple(PROJECTION_2288.movie_id,PROJECTION_2288.movie_id,PROJECTION_2288.movie_id,PROJECTION_2288.movie_id,PROJECTION_2288.movie_id,PROJECTION_2288.movie_id)
       -    320440  │└PROJECT movie_id_right, movie_id AS movie_id_right_2, info
       -    320440   PROJECT movie_id, info, movie_id
       -    320440   INNER JOIN HASH ON PROJECTION_2300.movie_id = PROJECTION_2291.movie_id
       -   1325361   │└PROJECT movie_id AS movie_id_right
       -   1325361    PROJECT movie_id
       -   1325361    INNER JOIN HASH ON PROJECTION_2297.info_type_id = PROJECTION_2294.id
       -         1    │└PROJECT id
       -         1     PROJECT id
       -         1     TABLE SCAN info_type WHERE info = 'countries'
       -  14835720    PROJECT info_type_id, movie_id
       -  14835720    PROJECT movie_id, info_type_id
       -  14835720    TABLE SCAN movie_info WHERE TRUE
       -    324117   PROJECT movie_id AS movie_id_left, info
       -    324117   PROJECT info, movie_id
       -    324117   INNER JOIN HASH ON PROJECTION_2306.info_type_id = PROJECTION_2303.id
       -         1   │└PROJECT id
       -         1    PROJECT id
       -         1    TABLE SCAN info_type WHERE info = 'rating'
       -   1172960   PROJECT info_type_id, info, movie_id
       -   1172960   PROJECT movie_id, info, info_type_id
       -   1172960   TABLE SCAN movie_info_idx WHERE info < '7.0'
       -         0  PROJECT movie_id AS movie_id_left, movie_id AS movie_id_left_2, id, name, title
       -         0  PROJECT name, movie_id, movie_id, title, id
       -         0  INNER JOIN HASH ON tuple(PROJECTION_2327.movie_id,PROJECTION_2327.id) = tuple(PROJECTION_2312.movie_id,PROJECTION_2312.movie_id)
       -    299742  │└PROJECT movie_id AS movie_id_right, name
       -    299742   PROJECT name, movie_id
       -    299742   INNER JOIN HASH ON PROJECTION_2318.company_type_id = PROJECTION_2315.id
       -         4   │└PROJECT id
       -         4    PROJECT id
       -         4    TABLE SCAN company_type
       -    299742   PROJECT company_type_id, name, movie_id
       -    299742   PROJECT name, company_type_id, movie_id
       -    299742   INNER JOIN HASH ON PROJECTION_2324.id = PROJECTION_2321.company_id
       -    303271   │└PROJECT company_id, company_type_id, movie_id
       -    303271    PROJECT company_id, company_type_id, movie_id
       -    303271    TABLE SCAN movie_companies WHERE notLike(note,'%(USA)%') AND note LIKE '%(200%)%'
       -    211073   PROJECT id, name
       -    211073   PROJECT id, name
       -    211073   TABLE SCAN company_name WHERE country_code <> 'us'
       -    684042  PROJECT movie_id AS movie_id_left, id, title
       -    684042  PROJECT movie_id, title, id
       -    684042  INNER JOIN HASH ON PROJECTION_2333.kind_id = PROJECTION_2330.id
       -         7  │└PROJECT id AS id_right
       -         7   PROJECT id
       -         7   TABLE SCAN kind_type WHERE TRUE
       -    684042  PROJECT kind_id, movie_id, title, id_left
       -    684042  PROJECT movie_id, title, id, kind_id
       -    684042  INNER JOIN HASH ON PROJECTION_2339.keyword_id = PROJECTION_2336.id
       -    134170  │└PROJECT id AS id_right
       -    134170   PROJECT id
       -    134170   TABLE SCAN keyword WHERE TRUE
       -    684042  PROJECT keyword_id, movie_id, title, id AS id_left, kind_id
       -    684042  PROJECT movie_id, keyword_id, title, id, kind_id
       -    684042  INNER JOIN HASH ON PROJECTION_2345.movie_id = PROJECTION_2342.id
       -    662065  │└PROJECT id, title, kind_id
       -    662065   PROJECT id, title, kind_id
       -    662065   TABLE SCAN title WHERE production_year > 2008
       -   4523930  PROJECT movie_id, keyword_id
       -   4523930  PROJECT movie_id, keyword_id
       -   4523930  TABLE SCAN movie_keyword
Native storage
Estimate    Actual  Operator
       -         1  AGGREGATE MIN(#0), MIN(#1), MIN(#2)
       0      2851  PROJECT name, info, title
       0      2851  INNER JOIN HASH ON id = company_type_id
       0      2851  │└INNER JOIN HASH ON id = keyword_id
       0    319409   │└INNER JOIN HASH ON movie_id = movie_id
       0      3672    │└INNER JOIN HASH ON info_type_id = id
       2         1     │└FILTER id <= 110
       2         1      TABLE SCAN info_type WHERE info = 'countries'
       7      3672     INNER JOIN HASH ON movie_id = movie_id
       5      6816     │└INNER JOIN HASH ON id = company_id
      29      7820      │└INNER JOIN HASH ON movie_id = movie_id
     142     40853       │└INNER JOIN HASH ON kind_id = id
       1         2        │└FILTER (kind = 'movie') OR (kind = 'episode')
       7         7         TABLE SCAN kind_type WHERE kind IN('movie','episode')
     994     55096        INNER JOIN HASH ON id = movie_id
    4885    324111        │└INNER JOIN HASH ON info_type_id = id
       2         1         │└FILTER id >= 99
       2         1          TABLE SCAN info_type WHERE info = 'rating'
  276007    324111         FILTER movie_id <= 2525745
  276007    324117         TABLE SCAN movie_info_idx WHERE info < '7.0'
  505662     60793        FILTER id BETWEEN 2 AND 2525745
  505662     60796        TABLE SCAN title WHERE production_year > 2008
  521825     10496       TABLE SCAN movie_companies WHERE ( NOT contains(note,'(USA)')) AND (note LIKE '%(200%)%')
   46999      2255      TABLE SCAN company_name WHERE country_code != 'us'
 2967144      1053     FILTER movie_id BETWEEN 2 AND 2525745
 2967144      1053     FILTER (info = 'Germany') OR (info = 'German') OR (info = 'USA') OR (info = 'American')
14835720      4185     TABLE SCAN movie_info WHERE info IN('Germany','German','USA','American')
 4523930     28686    TABLE SCAN movie_keyword WHERE movie_id <= 2525745
   26834         3   FILTER (keyword = 'murder') OR (keyword = 'murder-in-title') OR (keyword = 'blood') OR (keyword = 'violence')
  134170    133514   TABLE SCAN keyword WHERE keyword IN('murder','murder-in-title','blood','violence')
       4         1  TABLE SCAN company_type WHERE id <= 2
Apache Iceberg
Estimate    Actual  Operator
       1         1  PROJECT movie_company, rating, western_violent_movie
       1         1  AGGREGATE MIN(name), MIN(info), MIN(title)
    7666        10  DISTRIBUTE GATHER
    7666        10  AGGREGATE MIN(name), MIN(info), MIN(title)
    7666      2851  INNER JOIN HASH ON id = kind_id
       2         2  │└DISTRIBUTE GATHER
       2         2   FILTER (kind = 'movie') OR (kind = 'episode')
       7         7   DISTRIBUTE ROUND ROBIN
       7         7   TABLE SCAN kind_type WHERE (kind = 'movie') OR (kind = 'episode')
   26834      3027  INNER JOIN HASH ON movie_id = id AND movie_id = id AND movie_id = id AND movie_id = id
   26834     40185  │└DISTRIBUTE GATHER
   26834     40185   INNER JOIN HASH ON id = keyword_id
   26834         3   │└DISTRIBUTE GATHER
   26834         3    FILTER keyword IN('murder','murder-in-title','blood','violence')
  134170    134170    DISTRIBUTE ROUND ROBIN
  134170    134170    TABLE SCAN keyword WHERE keyword IN('murder','murder-in-title','blood','violence')
   45898   4137827   INNER JOIN HASH ON movie_id = movie_id AND movie_id = movie_id AND movie_id = movie_id
   25628     62374   │└DISTRIBUTE GATHER
   25628     62374    INNER JOIN HASH ON id = info_type_id
      23         1    │└DISTRIBUTE GATHER
      23         1     FILTER info = 'rating'
     113       113     DISTRIBUTE ROUND ROBIN
     113       113     TABLE SCAN info_type WHERE info = 'rating'
   25628    258207    INNER JOIN HASH ON movie_id = movie_id AND movie_id = movie_id
   25628    114885    │└DISTRIBUTE GATHER
   25628    114885     INNER JOIN HASH ON id = info_type_id
      23         1     │└DISTRIBUTE GATHER
      23         1      FILTER info = 'countries'
     113       113      DISTRIBUTE ROUND ROBIN
     113       113      TABLE SCAN info_type WHERE info = 'countries'
  122571    114885     INNER JOIN HASH ON movie_id = movie_id
  104366    248388     │└DISTRIBUTE GATHER
  104366    248388      INNER JOIN HASH ON id = company_type_id
       4         4      │└TABLE SCAN company_type
  104366    248388      INNER JOIN HASH ON id = company_id
   47000    126230      │└DISTRIBUTE GATHER
   47000    126230       FILTER country_code <> 'us'
  234997    234997       TABLE SCAN company_name WHERE country_code <> 'us'
  521826    303271      FILTER note NOT  LIKE '%(USA)%' AND note LIKE '%(200%)%'
 2609129   2609129      TABLE SCAN movie_companies WHERE ((note NOT  LIKE '%(USA)%' AND note LIKE '%(200%)%') AND (((company_id >= 4) AND (company_id <= 234995)) AND TRUE)) AND (((company_type_id >= 1) AND (company_type_id <= 4)) AND company_type_id IN(1,2,3,4))
 2967144    588764     FILTER info IN('Germany','German','USA','American')
14835720   1355825     TABLE SCAN movie_info WHERE (info IN('Germany','German','USA','American') AND (((movie_id >= 82) AND (movie_id <= 2525666)) AND TRUE)) AND (((info_type_id >= 8) AND (info_type_id <= 8)) AND info_type_id IN 8)
  276007   1172960    FILTER info < '7.0'
 1380035   1380035    TABLE SCAN movie_info_idx WHERE ((info < '7.0') AND ((((movie_id >= 114) AND (movie_id <= 2525502)) AND ((movie_id >= 114) AND (movie_id <= 2525502))) AND TRUE)) AND (((info_type_id >= 101) AND (info_type_id <= 101)) AND info_type_id IN 101)
 4523930   4523930   TABLE SCAN movie_keyword WHERE (((((movie_id >= 114) AND (movie_id <= 2525471)) AND ((movie_id >= 114) AND (movie_id <= 2525471))) AND ((movie_id >= 114) AND (movie_id <= 2525471))) AND TRUE) AND (((keyword_id >= 137) AND (keyword_id <= 875)) AND keyword_id IN(875,865,137))
  198654    662065  FILTER production_year > 2008
 2528312   2528312  TABLE SCAN title WHERE ((production_year > 2008) AND ((((((id >= 10496) AND (id <= 2525471)) AND ((id >= 10496) AND (id <= 2525471))) AND ((id >= 10496) AND (id <= 2525471))) AND ((id >= 10496) AND (id <= 2525471))) AND TRUE)) AND (((kind_id >= 1) AND (kind_id <= 7)) AND kind_id IN(1,7))
Native storage
Estimate    Actual  Operator
       1         1  AGGREGATE MIN(cn.name), MIN(mi_idx.info), MIN(t.title)
       1         2  DISTRIBUTE GATHER
       1         2  AGGREGATE MIN(cn.name), MIN(mi_idx.info), MIN(t.title)
    1530      2851  INNER JOIN HASH ON mi_idx.info_type_id = it2.id
    1530         1  │└DISTRIBUTE GATHER
 4520000         1   TABLE SCAN info_type WHERE it2.info = 'rating'
    1530     10580  INNER JOIN HASH ON mc.movie_id = mi_idx.movie_id
    1530   1172960  │└DISTRIBUTE GATHER
  134000   1172960   TABLE SCAN movie_info_idx WHERE mi_idx.info < '7.0'
    1530      3994  INNER JOIN HASH ON mc.movie_id = mk.movie_id
    1530     37091  │└DISTRIBUTE GATHER
     492     37091   INNER JOIN HASH ON mk.keyword_id = k.id
     492         3   │└DISTRIBUTE GATHER
 2610000         3    TABLE SCAN keyword WHERE k.keyword IN('murder','murder-in-title','blood','violence')
 2530000   4519843   TABLE SCAN movie_keyword
    1530      6879  INNER JOIN HASH ON mc.company_id = cn.id
    1530    126230  │└DISTRIBUTE GATHER
       7    126230   TABLE SCAN company_name WHERE (cn.country_code IS NOT NULL) AND ( NOT (cn.country_code = 'us'))
     476      8518  INNER JOIN HASH ON mc.company_type_id = ct.id
     476         4  │└DISTRIBUTE GATHER
       4         4   TABLE SCAN company_type
     476      8518  INNER JOIN HASH ON mi.movie_id = mc.movie_id
     476    303271  │└DISTRIBUTE GATHER
  235000    303271   TABLE SCAN movie_companies WHERE (mc.note IS NOT NULL) AND ( NOT contains(mc.note,'(USA)')) AND mc.note LIKE '%(200%)%'
     186    113741  INNER JOIN HASH ON t.kind_id = kt.id
     186         2  │└DISTRIBUTE GATHER
 1380000         2   TABLE SCAN kind_type WHERE kt.kind IN('movie','episode')
     186    154448  INNER JOIN HASH ON mi.movie_id = t.id
     186    588764  │└DISTRIBUTE GATHER
     176    588764   INNER JOIN HASH ON mi.info_type_id = it1.id
     176         1   │└DISTRIBUTE GATHER
     113         1    TABLE SCAN info_type WHERE it1.info = 'countries'
14800000    599812   TABLE SCAN movie_info WHERE mi.info IN('Germany','German','USA','American')
     113    660390  TABLE SCAN title WHERE (t.production_year IS NOT NULL) AND (t.production_year > 2008L)
Native storage
Estimate    Actual  Operator
       1         1  AGGREGATE MIN(name as name) AS Expr1022, MIN(info as info) AS Expr1023, MIN(title as title) AS Expr1024
       1      2851  FILTER info as info = 'rating'
       1     10580  INNER JOIN LOOP ON Bmk1006 = Bmk1006
       1     10580  │└TABLE SEEK info_type AS it2
       1     10580  INNER JOIN LOOP ON mi_idx.info_type_id = it2.id
       1     10580  │└TABLE SEEK info_type AS it2
       1     10580  INNER JOIN LOOP ON t.id = mi_idx.movie_id
       1     10580  │└TABLE SEEK movie_info_idx AS mi_idx WHERE info as info < '7.0'
       1      3994  FILTER kind as kind = 'episode' OR kind as kind = 'movie'
       2      4205  INNER JOIN LOOP ON Bmk1010 = Bmk1010
       1      4205  │└TABLE SEEK kind_type AS kt
       2      4205  INNER JOIN LOOP ON t.kind_id = kt.id
       1      4205  │└TABLE SEEK kind_type AS kt
       2      4205  INNER JOIN LOOP ON Bmk1020 = Bmk1020
       0      4205  │└TABLE SEEK title AS t WHERE production_year as production_year > 2008
       8     65436  PROJECT BmkToPage Bmk1020 AS Expr1081
       8     65436  INNER JOIN LOOP ON mk.movie_id = t.id
       1     65436  │└TABLE SEEK title AS t
       8     65436  FILTER country_code as country_code <> 'us'
      15     70725  INNER JOIN LOOP ON Bmk1000 = Bmk1000
       1     70725  │└TABLE SEEK company_name AS cn
      15     70725  INNER JOIN LOOP ON mc.company_id = cn.id
       1     70725  │└TABLE SEEK company_name AS cn
      15     70725  FILTER  NOT note as note LIKE '%(USA)%' AND note as note LIKE '%(200%)%'
     133    249339  INNER JOIN LOOP ON Bmk1012 = Bmk1012
       1    249339  │└TABLE SEEK movie_companies AS mc
     133    249339  PROJECT BmkToPage Bmk1012 AS Expr1079
     133    249339  INNER JOIN LOOP ON mk.movie_id = mc.movie_id
       9    249339  │└TABLE SEEK movie_companies AS mc
      13     23042  FILTER info as info = 'American' OR info as info = 'German' OR info as info = 'Germany' OR info as info = 'USA'
     308     44297  INNER JOIN LOOP ON mi.movie_id = mi.movie_id AND Uniq1015 = Uniq1015
       1     44297  │└TABLE SEEK movie_info AS mi
     308     44297  INNER JOIN LOOP ON it1.id = mi.info_type_id AND mk.movie_id = mi.movie_id
       1     44297  │└TABLE SEEK movie_info AS mi
     362     37091  INNER JOIN LOOP ON info as info = 'countries'
       1         1  │└MATERIALISE AS m40
       1         1   TABLE SCAN info_type AS it1 WHERE info as info = 'countries'
     362     37091  INNER JOIN LOOP ON Bmk1018 = Bmk1018
       1     37091  │└TABLE SEEK movie_keyword AS mk
     362     37091  INNER JOIN LOOP ON k.id = mk.keyword_id
      90     37091  │└TABLE SEEK movie_keyword AS mk
       4         3  TABLE SCAN keyword AS k WHERE keyword as keyword = 'blood' OR keyword as keyword = 'murder' OR keyword as keyword = 'murder-in-title' OR keyword as keyword = 'violence'
Apache Iceberg
Estimate    Actual  Operator
       1         ∞  PROJECT min AS movie_company, min_53 AS rating, min_54 AS western_violent_movie
       1         1  AGGREGATE MIN(min_55) AS min, MIN(min_56) AS min_53, MIN(min_57) AS min_54
       -        16  DISTRIBUTE GATHER
       -        16  AGGREGATE MIN(name) AS min_55, MIN(info_36) AS min_56, MIN(title) AS min_57
       -      2851  INNER JOIN HASH ON kind_id = id_17
       7         2  │└DISTRIBUTE GATHER
       7         2   PROJECT id AS id_17
       7         2   FILTER kind IN('episode','movie')
       7         2   TABLE SCAN kind_type
       -      3027  INNER JOIN HASH ON movie_id = id_46
  194377    661945  │└DISTRIBUTE HASH ON id_46
  194377    661945   PROJECT id AS id_46, title, kind_id
  194377    661945   FILTER production_year > 2008
  194377    661945   TABLE SCAN title
       -     40185  INNER JOIN HASH ON keyword_id = id_13
  134170         3  │└DISTRIBUTE GATHER
  134170         3   PROJECT id AS id_13
  134170         3   FILTER keyword IN('blood','murder','murder-in-title','violence')
  134170         3   TABLE SCAN keyword
       -     40185  INNER JOIN HASH ON movie_id = movie_id_42
 4523930     37091  │└DISTRIBUTE HASH ON movie_id_42
 4523930     37091   PROJECT movie_id AS movie_id_42, keyword_id
 4523930     37091   TABLE SCAN movie_keyword
       -     22559  INNER JOIN HASH ON info_type_id_35 = id_8
     113         1  │└DISTRIBUTE GATHER
     113         1   PROJECT id AS id_8
     113         1   FILTER info = 'rating'
     113         1   TABLE SCAN info_type
       -     22559  INNER JOIN HASH ON movie_id = movie_id_34
 1380035     18183  │└DISTRIBUTE HASH ON movie_id_34
 1380035     18183   PROJECT movie_id AS movie_id_34, info_type_id AS info_type_id_35, info AS info_36
 1380035     18183   FILTER info < '7.0'
 1380035     18183   TABLE SCAN movie_info_idx
       -     22559  INNER JOIN HASH ON info_type_id = id_4
     113         1  │└DISTRIBUTE GATHER
     113         1   PROJECT id AS id_4
     113         1   FILTER info = 'countries'
     113         1   TABLE SCAN info_type
       -     22559  INNER JOIN HASH ON movie_id = movie_id_27
13352148     11742  │└DISTRIBUTE HASH ON movie_id_27
13352148     11742   PROJECT movie_id AS movie_id_27, info_type_id
13352148     11742   FILTER info IN('American','German','Germany','USA')
13352148     11742   TABLE SCAN movie_info
       -    248388  INNER JOIN HASH ON company_type_id = id_0
       4         4  │└DISTRIBUTE GATHER
       4         4   PROJECT id AS id_0
       4         4   TABLE SCAN company_type
       -    248388  INNER JOIN HASH ON id = company_id
 2348216    303271  │└DISTRIBUTE HASH ON company_id
 2348216    303271   FILTER  NOT (note LIKE '%(USA)%') AND (note LIKE '%(200%)%')
 2348216    303271   TABLE SCAN movie_companies
  105537    126230  FILTER country_code <> 'us'
  105537    126230  TABLE SCAN company_name
Native storage
Estimate    Actual  Operator
       1         1  AGGREGATE MIN(name), MIN(info), MIN(title)
       1      2851  INNER JOIN LOOP ON id = info_type_id
       1      3042  │└INNER JOIN LOOP ON movie_id = movie_id AND movie_id = id AND (movie_id = id)
       1      2958   │└INNER JOIN LOOP ON id = company_type_id AND (id = company_type_id)
       1      2958    │└INNER JOIN LOOP ON id = company_id
       1      3374     │└INNER JOIN LOOP ON movie_id = movie_id AND movie_id = id AND (movie_id = id)
       1      2378      │└INNER JOIN LOOP ON id = info_type_id
      25      8699       │└INNER JOIN LOOP ON movie_id = movie_id AND movie_id = id AND (movie_id = id)
      10      4832        │└INNER JOIN LOOP ON id = kind_id AND (id = kind_id)
      35      5606         │└INNER JOIN LOOP ON id = movie_id
     135     37091          │└INNER JOIN LOOP ON keyword_id = id
       4         3           │└TABLE SEEK keyword AS k
     915     37091           TABLE SEEK movie_keyword AS mk
   37091     37091          TABLE SEEK title AS t WHERE t.production_year > 2008
       2         2         TABLE SCAN kind_type AS kt WHERE kt.kind IN('movie','episode')
    9664      8697        TABLE SEEK movie_info_idx AS mi_idx WHERE mi_idx.info < '7.0'
       4         4       TABLE SEEK info_type AS it2 WHERE it2.info = 'rating'
    2378      3376      TABLE SEEK movie_companies AS mc WHERE (mc.note NOT  LIKE '%(USA)%') AND (mc.note LIKE '%(200%)%')
    3374      3374     TABLE SEEK company_name AS cn WHERE cn.country_code <> 'us'
       4         1    TABLE SCAN company_type AS ct
    5916      3046   TABLE SEEK movie_info AS mi WHERE mi.info IN('Germany','German','USA','American')
    3042      3042  TABLE SEEK info_type AS it1 WHERE it1.info = 'countries'