2 SET pg_hint_plan.enable_hint TO on;
3 SET pg_hint_plan.debug_print TO on;
4 SET client_min_messages TO LOG;
5 SET search_path TO public;
6 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
13 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
15 ------------------------------
16 Index Scan using t1_i1 on t1
20 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
22 ---------------------------------
23 Bitmap Heap Scan on t1
24 Recheck Cond: (c3 < 10)
25 -> Bitmap Index Scan on t1_i
29 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
31 -----------------------------------
33 TID Cond: (ctid = '(1,1)'::tid)
38 ---- No. S-1-1 specified pattern of the object name
42 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
58 EXPLAIN (COSTS false) SELECT * FROM s1.t1 t_1 WHERE t_1.c1 = 1;
67 ----------------------------------
68 Index Scan using t1_i1 on t1 t_1
74 EXPLAIN (COSTS false) SELECT * FROM s1.t1 t_1 WHERE t_1.c1 = 1;
89 ---- No. S-1-2 specified schema name in the hint option
93 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
109 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
118 ------------------------------
119 Index Scan using t1_i1 on t1
124 ---- No. S-1-3 table doesn't exist in the hint option
128 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
144 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
153 ------------------------------
154 Index Scan using t1_i1 on t1
159 ---- No. S-1-4 conflict table name
162 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = 1 AND t1.c1 = t2.c1;
164 ------------------------------------
166 -> Index Scan using t1_i1 on t1
173 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = 1 AND t1.c1 = t2.c1;
182 --------------------------
191 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2.t1.c1;
193 ------------------------------------
195 -> Index Scan using t1_i1 on t1
202 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2.t1.c1;
211 ------------------------------------------
213 -> Bitmap Heap Scan on t1
214 Recheck Cond: (c1 = 1)
215 -> Bitmap Index Scan on t1_i1
217 -> Bitmap Heap Scan on t1
218 Recheck Cond: (c1 = 1)
219 -> Bitmap Index Scan on t1_pkey
224 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 s2t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2t1.c1;
233 ----------------------------------------
235 -> Bitmap Heap Scan on t1
236 Recheck Cond: (c1 = 1)
237 -> Bitmap Index Scan on t1_i1
239 -> Seq Scan on t1 s2t1
243 /*+BitmapScan(s2t1)*/
244 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s2.t1 s2t1 WHERE s1.t1.c1 = 1 AND s1.t1.c1 = s2t1.c1;
253 ------------------------------------------
255 -> Index Scan using t1_i1 on t1
257 -> Bitmap Heap Scan on t1 s2t1
258 Recheck Cond: (c1 = 1)
259 -> Bitmap Index Scan on t1_pkey
264 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 WHERE s1.t1.c1 = 1) FROM s1.t1 WHERE s1.t1.c1 = 1;
266 ---------------------------------------------------------------------
267 Index Scan using t1_i1 on t1
269 InitPlan 2 (returns $1)
271 InitPlan 1 (returns $0)
273 -> Index Scan using t1_i1 on t1
274 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
278 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 WHERE s1.t1.c1 = 1) FROM s1.t1 WHERE s1.t1.c1 = 1;
287 ---------------------------------------------------------------------------
288 Bitmap Heap Scan on t1
289 Recheck Cond: (c1 = 1)
290 InitPlan 2 (returns $1)
292 InitPlan 1 (returns $0)
294 -> Bitmap Heap Scan on t1
295 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
296 -> Bitmap Index Scan on t1_i1
297 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
298 -> Bitmap Index Scan on t1_i1
303 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 t11 WHERE t11.c1 = 1) FROM s1.t1 t12 WHERE t12.c1 = 1;
312 ---------------------------------------------------------------------------
313 Index Scan using t1_i1 on t1 t12
315 InitPlan 2 (returns $1)
317 InitPlan 1 (returns $0)
319 -> Bitmap Heap Scan on t1 t11
320 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
321 -> Bitmap Index Scan on t1_i1
322 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
326 EXPLAIN (COSTS false) SELECT (SELECT max(c1) FROM s1.t1 t11 WHERE t11.c1 = 1) FROM s1.t1 t12 WHERE t12.c1 = 1;
335 ---------------------------------------------------------------------
336 Bitmap Heap Scan on t1 t12
337 Recheck Cond: (c1 = 1)
338 InitPlan 2 (returns $1)
340 InitPlan 1 (returns $0)
342 -> Index Scan using t1_i1 on t1 t11
343 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
344 -> Bitmap Index Scan on t1_i1
349 ---- No. S-1-5 object type for the hint
353 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
368 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE p1.c1 = 1;
370 ---------------------------------
375 -> Seq Scan on p1c1 p1
380 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE p1.c1 = 1;
389 ------------------------------------------------
392 -> Index Scan using p1_i on p1
394 -> Index Scan using p1c1_i on p1c1 p1
399 EXPLAIN (COSTS false) SELECT * FROM s1.ul1 WHERE ul1.c1 = 1;
401 ----------------------------------
402 Index Scan using ul1_pkey on ul1
407 EXPLAIN (COSTS false) SELECT * FROM s1.ul1 WHERE ul1.c1 = 1;
422 CREATE TEMP TABLE tm1 (LIKE s1.t1 INCLUDING ALL);
423 NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "tm1_pkey" for table "tm1"
424 EXPLAIN (COSTS false) SELECT * FROM tm1 WHERE tm1.c1 = 1;
426 ----------------------------------
427 Index Scan using tm1_pkey on tm1
432 EXPLAIN (COSTS false) SELECT * FROM tm1 WHERE tm1.c1 = 1;
447 EXPLAIN (COSTS false) SELECT * FROM pg_catalog.pg_class WHERE oid = 1;
449 -------------------------------------------------
450 Index Scan using pg_class_oid_index on pg_class
451 Index Cond: (oid = 1::oid)
454 /*+SeqScan(pg_class)*/
455 EXPLAIN (COSTS false) SELECT * FROM pg_catalog.pg_class WHERE oid = 1;
464 --------------------------
466 Filter: (oid = 1::oid)
472 EXPLAIN (COSTS false) SELECT * FROM s1.f1() AS ft1 WHERE ft1.c1 = 1;
474 -------------------------
475 Function Scan on f1 ft1
480 EXPLAIN (COSTS false) SELECT * FROM s1.f1() AS ft1 WHERE ft1.c1 = 1;
489 -------------------------
490 Function Scan on f1 ft1
495 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1'), (2,2,2,'2'), (3,3,3,'3')) AS val1 (c1, c2, c3, c4) WHERE val1.c1 = 1;
497 ---------------------------
498 Values Scan on "*VALUES*"
499 Filter: (column1 = 1)
503 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1'), (2,2,2,'2'), (3,3,3,'3')) AS val1 (c1, c2, c3, c4) WHERE val1.c1 = 1;
512 ---------------------------
513 Values Scan on "*VALUES*"
514 Filter: (column1 = 1)
517 /*+SeqScan(*VALUES*)*/
518 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1'), (2,2,2,'2'), (3,3,3,'3')) AS val1 (c1, c2, c3, c4) WHERE val1.c1 = 1;
527 ---------------------------
528 Values Scan on "*VALUES*"
529 Filter: (column1 = 1)
533 EXPLAIN (COSTS false) WITH c1(c1) AS (SELECT max(c1) FROM s1.t1 WHERE t1.c1 = 1)
534 SELECT * FROM s1.t1, c1 WHERE t1.c1 = 1 AND t1.c1 = c1.c1;
536 ---------------------------------------------------------------------
540 InitPlan 1 (returns $0)
542 -> Index Scan using t1_i1 on t1
543 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
544 -> Index Scan using t1_i1 on t1
551 EXPLAIN (COSTS false) WITH c1(c1) AS (SELECT max(c1) FROM s1.t1 WHERE t1.c1 = 1)
552 SELECT * FROM s1.t1, c1 WHERE t1.c1 = 1 AND t1.c1 = c1.c1;
561 ---------------------------------------------------------------------
565 InitPlan 1 (returns $0)
567 -> Index Scan using t1_i1 on t1
568 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
569 -> Index Scan using t1_i1 on t1
576 EXPLAIN (COSTS false) SELECT * FROM s1.v1 WHERE v1.c1 = 1;
578 -----------------------------------
579 Index Scan using t1_i1 on t1 v1t1
584 EXPLAIN (COSTS false) SELECT * FROM s1.v1 WHERE v1.c1 = 1;
593 -----------------------------------
594 Index Scan using t1_i1 on t1 v1t1
599 EXPLAIN (COSTS false) SELECT * FROM (SELECT * FROM s1.t1 WHERE t1.c1 = 1) AS s1 WHERE s1.c1 = 1;
601 ------------------------------
602 Index Scan using t1_i1 on t1
607 EXPLAIN (COSTS false) SELECT * FROM (SELECT * FROM s1.t1 WHERE t1.c1 = 1) AS s1 WHERE s1.c1 = 1;
616 ------------------------------
617 Index Scan using t1_i1 on t1
622 ---- No. S-2-1 complexity query block
625 EXPLAIN (COSTS false)
626 SELECT max(bmt1.c1), (
627 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
629 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
632 -------------------------------------------------------------------
634 InitPlan 1 (returns $0)
637 Merge Cond: (b1t1.c1 = b1t2.c1)
639 Merge Cond: (b1t1.c1 = b1t4.c1)
641 Merge Cond: (b1t1.c1 = b1t3.c1)
642 -> Index Scan using t1_i1 on t1 b1t1
643 -> Index Scan using t3_i1 on t3 b1t3
644 -> Index Scan using t4_i1 on t4 b1t4
647 -> Seq Scan on t2 b1t2
649 Merge Cond: (bmt1.c1 = bmt2.c1)
651 Merge Cond: (bmt1.c1 = bmt4.c1)
653 Merge Cond: (bmt1.c1 = bmt3.c1)
654 -> Index Scan using t1_i1 on t1 bmt1
655 -> Index Scan using t3_i1 on t3 bmt3
656 -> Index Scan using t4_i1 on t4 bmt4
659 -> Seq Scan on t2 bmt2
662 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
663 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
665 EXPLAIN (COSTS false)
666 SELECT max(bmt1.c1), (
667 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
669 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
675 IndexScan(b1t3 t3_pkey)
676 BitmapScan(b1t4 t4_pkey)
678 IndexScan(bmt2 t2_pkey)
679 BitmapScan(bmt3 t3_pkey)
686 -------------------------------------------------------------------------
688 InitPlan 1 (returns $1)
691 Merge Cond: (b1t1.c1 = b1t2.c1)
694 Merge Cond: (b1t1.c1 = b1t3.c1)
697 -> Seq Scan on t1 b1t1
698 -> Index Scan using t3_pkey on t3 b1t3
699 -> Bitmap Heap Scan on t4 b1t4
700 Recheck Cond: (c1 = b1t1.c1)
701 -> Bitmap Index Scan on t4_pkey
702 Index Cond: (c1 = b1t1.c1)
705 -> Seq Scan on t2 b1t2
707 Hash Cond: (bmt4.c1 = bmt1.c1)
708 -> Seq Scan on t4 bmt4
712 Hash Cond: (bmt1.c1 = bmt2.c1)
713 -> Seq Scan on t1 bmt1
715 -> Index Scan using t2_pkey on t2 bmt2
716 -> Bitmap Heap Scan on t3 bmt3
717 Recheck Cond: (c1 = bmt1.c1)
718 -> Bitmap Index Scan on t3_pkey
719 Index Cond: (c1 = bmt1.c1)
723 EXPLAIN (COSTS false)
724 SELECT max(bmt1.c1), (
725 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
727 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
729 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
732 -------------------------------------------------------------------
734 InitPlan 1 (returns $0)
737 Merge Cond: (b1t1.c1 = b1t2.c1)
739 Merge Cond: (b1t1.c1 = b1t4.c1)
741 Merge Cond: (b1t1.c1 = b1t3.c1)
742 -> Index Scan using t1_i1 on t1 b1t1
743 -> Index Scan using t3_i1 on t3 b1t3
744 -> Index Scan using t4_i1 on t4 b1t4
747 -> Seq Scan on t2 b1t2
748 InitPlan 2 (returns $1)
751 Merge Cond: (b2t1.c1 = b2t2.c1)
753 Merge Cond: (b2t1.c1 = b2t4.c1)
755 Merge Cond: (b2t1.c1 = b2t3.c1)
756 -> Index Scan using t1_i1 on t1 b2t1
757 -> Index Scan using t3_i1 on t3 b2t3
758 -> Index Scan using t4_i1 on t4 b2t4
761 -> Seq Scan on t2 b2t2
763 Merge Cond: (bmt1.c1 = bmt2.c1)
765 Merge Cond: (bmt1.c1 = bmt4.c1)
767 Merge Cond: (bmt1.c1 = bmt3.c1)
768 -> Index Scan using t1_i1 on t1 bmt1
769 -> Index Scan using t3_i1 on t3 bmt3
770 -> Index Scan using t4_i1 on t4 bmt4
773 -> Seq Scan on t2 bmt2
776 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
777 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
778 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
780 EXPLAIN (COSTS false)
781 SELECT max(bmt1.c1), (
782 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
784 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
786 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
792 IndexScan(b1t3 t3_pkey)
793 BitmapScan(b1t4 t4_pkey)
794 BitmapScan(b2t1 t1_pkey)
797 IndexScan(b2t4 t4_pkey)
799 IndexScan(bmt2 t2_pkey)
800 BitmapScan(bmt3 t3_pkey)
807 ---------------------------------------------------------------------------
809 InitPlan 1 (returns $1)
812 Merge Cond: (b1t1.c1 = b1t2.c1)
815 Merge Cond: (b1t1.c1 = b1t3.c1)
818 -> Seq Scan on t1 b1t1
819 -> Index Scan using t3_pkey on t3 b1t3
820 -> Bitmap Heap Scan on t4 b1t4
821 Recheck Cond: (c1 = b1t1.c1)
822 -> Bitmap Index Scan on t4_pkey
823 Index Cond: (c1 = b1t1.c1)
826 -> Seq Scan on t2 b1t2
827 InitPlan 2 (returns $3)
830 Hash Cond: (b2t3.c1 = b2t1.c1)
831 -> Seq Scan on t3 b2t3
834 Merge Cond: (b2t1.c1 = b2t2.c1)
836 -> Index Scan using t4_pkey on t4 b2t4
837 -> Bitmap Heap Scan on t1 b2t1
838 Recheck Cond: (c1 = b2t4.c1)
839 -> Bitmap Index Scan on t1_pkey
840 Index Cond: (c1 = b2t4.c1)
843 -> Seq Scan on t2 b2t2
845 Hash Cond: (bmt4.c1 = bmt1.c1)
846 -> Seq Scan on t4 bmt4
850 Hash Cond: (bmt1.c1 = bmt2.c1)
851 -> Seq Scan on t1 bmt1
853 -> Index Scan using t2_pkey on t2 bmt2
854 -> Bitmap Heap Scan on t3 bmt3
855 Recheck Cond: (c1 = bmt1.c1)
856 -> Bitmap Index Scan on t3_pkey
857 Index Cond: (c1 = bmt1.c1)
861 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = sbmt4.c1;
863 -----------------------------------------------------------
866 Merge Cond: (bmt1.c1 = bmt2.c1)
868 Merge Cond: (bmt1.c1 = bmt4.c1)
870 Merge Cond: (bmt1.c1 = bmt3.c1)
871 -> Index Scan using t1_i1 on t1 bmt1
872 -> Index Scan using t3_i1 on t3 bmt3
873 -> Index Scan using t4_i1 on t4 bmt4
876 -> Seq Scan on t2 bmt2
879 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
881 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = sbmt4.c1;
885 IndexScan(bmt2 t2_pkey)
886 BitmapScan(bmt3 t3_pkey)
893 -------------------------------------------------------------------------
896 Hash Cond: (bmt4.c1 = bmt1.c1)
897 -> Seq Scan on t4 bmt4
901 Hash Cond: (bmt1.c1 = bmt2.c1)
902 -> Seq Scan on t1 bmt1
904 -> Index Scan using t2_pkey on t2 bmt2
905 -> Bitmap Heap Scan on t3 bmt3
906 Recheck Cond: (c1 = bmt1.c1)
907 -> Bitmap Index Scan on t3_pkey
908 Index Cond: (c1 = bmt1.c1)
912 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, (SELECT * FROM s1.t3 bmt3) sbmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = sbmt3.c1 AND bmt1.c1 = sbmt4.c1;
914 -----------------------------------------------------------
917 Merge Cond: (bmt1.c1 = bmt2.c1)
919 Merge Cond: (bmt1.c1 = bmt4.c1)
921 Merge Cond: (bmt1.c1 = bmt3.c1)
922 -> Index Scan using t1_i1 on t1 bmt1
923 -> Index Scan using t3_i1 on t3 bmt3
924 -> Index Scan using t4_i1 on t4 bmt4
927 -> Seq Scan on t2 bmt2
930 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
932 EXPLAIN (COSTS false) SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, (SELECT * FROM s1.t3 bmt3) sbmt3, (SELECT * FROM s1.t4 bmt4) sbmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = sbmt3.c1 AND bmt1.c1 = sbmt4.c1;
936 IndexScan(bmt2 t2_pkey)
937 BitmapScan(bmt3 t3_pkey)
944 -------------------------------------------------------------------------
947 Hash Cond: (bmt4.c1 = bmt1.c1)
948 -> Seq Scan on t4 bmt4
952 Hash Cond: (bmt1.c1 = bmt2.c1)
953 -> Seq Scan on t1 bmt1
955 -> Index Scan using t2_pkey on t2 bmt2
956 -> Bitmap Heap Scan on t3 bmt3
957 Recheck Cond: (c1 = bmt1.c1)
958 -> Bitmap Index Scan on t3_pkey
959 Index Cond: (c1 = bmt1.c1)
963 EXPLAIN (COSTS false)
964 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
966 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
970 -------------------------------------------------------------------
972 InitPlan 1 (returns $0)
975 Merge Cond: (b1t1.c1 = b1t2.c1)
977 Merge Cond: (b1t1.c1 = b1t4.c1)
979 Merge Cond: (b1t1.c1 = b1t3.c1)
980 -> Index Scan using t1_i1 on t1 b1t1
981 -> Index Scan using t3_i1 on t3 b1t3
982 -> Index Scan using t4_i1 on t4 b1t4
985 -> Seq Scan on t2 b1t2
987 Merge Cond: (bmt1.c1 = bmt2.c1)
989 Merge Cond: (bmt1.c1 = bmt4.c1)
991 Merge Cond: (bmt1.c1 = bmt3.c1)
992 -> Index Scan using t1_i1 on t1 bmt1
994 -> Index Scan using t3_i1 on t3 bmt3
995 -> Index Scan using t4_i1 on t4 bmt4
998 -> Seq Scan on t2 bmt2
1001 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1002 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1004 EXPLAIN (COSTS false)
1005 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1007 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1014 IndexScan(b1t3 t3_pkey)
1015 BitmapScan(b1t4 t4_pkey)
1017 IndexScan(bmt2 t2_pkey)
1018 BitmapScan(bmt3 t3_pkey)
1025 -------------------------------------------------------------------------
1027 InitPlan 1 (returns $1)
1030 Merge Cond: (b1t1.c1 = b1t2.c1)
1033 Merge Cond: (b1t1.c1 = b1t3.c1)
1036 -> Seq Scan on t1 b1t1
1037 -> Index Scan using t3_pkey on t3 b1t3
1038 -> Bitmap Heap Scan on t4 b1t4
1039 Recheck Cond: (c1 = b1t1.c1)
1040 -> Bitmap Index Scan on t4_pkey
1041 Index Cond: (c1 = b1t1.c1)
1044 -> Seq Scan on t2 b1t2
1046 Hash Cond: (bmt4.c1 = bmt1.c1)
1047 -> Seq Scan on t4 bmt4
1051 Hash Cond: (bmt1.c1 = bmt2.c1)
1052 -> Seq Scan on t1 bmt1
1055 -> Index Scan using t2_pkey on t2 bmt2
1056 -> Bitmap Heap Scan on t3 bmt3
1057 Recheck Cond: (c1 = bmt1.c1)
1058 -> Bitmap Index Scan on t3_pkey
1059 Index Cond: (c1 = bmt1.c1)
1063 EXPLAIN (COSTS false)
1064 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1066 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1068 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1072 -------------------------------------------------------------------
1074 InitPlan 1 (returns $0)
1077 Merge Cond: (b1t1.c1 = b1t2.c1)
1079 Merge Cond: (b1t1.c1 = b1t4.c1)
1081 Merge Cond: (b1t1.c1 = b1t3.c1)
1082 -> Index Scan using t1_i1 on t1 b1t1
1083 -> Index Scan using t3_i1 on t3 b1t3
1084 -> Index Scan using t4_i1 on t4 b1t4
1087 -> Seq Scan on t2 b1t2
1088 InitPlan 2 (returns $1)
1091 Merge Cond: (b2t1.c1 = b2t2.c1)
1093 Merge Cond: (b2t1.c1 = b2t4.c1)
1095 Merge Cond: (b2t1.c1 = b2t3.c1)
1096 -> Index Scan using t1_i1 on t1 b2t1
1097 -> Index Scan using t3_i1 on t3 b2t3
1098 -> Index Scan using t4_i1 on t4 b2t4
1101 -> Seq Scan on t2 b2t2
1103 Merge Cond: (bmt1.c1 = bmt2.c1)
1105 Merge Cond: (bmt1.c1 = bmt4.c1)
1107 Merge Cond: (bmt1.c1 = bmt3.c1)
1108 -> Index Scan using t1_i1 on t1 bmt1
1109 Filter: ((c1 <> $0) AND (c1 <> $1))
1110 -> Index Scan using t3_i1 on t3 bmt3
1111 -> Index Scan using t4_i1 on t4 bmt4
1114 -> Seq Scan on t2 bmt2
1117 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1118 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1119 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1121 EXPLAIN (COSTS false)
1122 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1124 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1126 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1133 IndexScan(b1t3 t3_pkey)
1134 BitmapScan(b1t4 t4_pkey)
1135 BitmapScan(b2t1 t1_pkey)
1138 IndexScan(b2t4 t4_pkey)
1140 IndexScan(bmt2 t2_pkey)
1141 BitmapScan(bmt3 t3_pkey)
1148 ---------------------------------------------------------------------------
1150 InitPlan 1 (returns $1)
1153 Merge Cond: (b1t1.c1 = b1t2.c1)
1156 Merge Cond: (b1t1.c1 = b1t3.c1)
1159 -> Seq Scan on t1 b1t1
1160 -> Index Scan using t3_pkey on t3 b1t3
1161 -> Bitmap Heap Scan on t4 b1t4
1162 Recheck Cond: (c1 = b1t1.c1)
1163 -> Bitmap Index Scan on t4_pkey
1164 Index Cond: (c1 = b1t1.c1)
1167 -> Seq Scan on t2 b1t2
1168 InitPlan 2 (returns $3)
1171 Hash Cond: (b2t3.c1 = b2t1.c1)
1172 -> Seq Scan on t3 b2t3
1175 Merge Cond: (b2t1.c1 = b2t2.c1)
1177 -> Index Scan using t4_pkey on t4 b2t4
1178 -> Bitmap Heap Scan on t1 b2t1
1179 Recheck Cond: (c1 = b2t4.c1)
1180 -> Bitmap Index Scan on t1_pkey
1181 Index Cond: (c1 = b2t4.c1)
1184 -> Seq Scan on t2 b2t2
1186 Hash Cond: (bmt4.c1 = bmt1.c1)
1187 -> Seq Scan on t4 bmt4
1191 Hash Cond: (bmt1.c1 = bmt2.c1)
1192 -> Seq Scan on t1 bmt1
1193 Filter: ((c1 <> $1) AND (c1 <> $3))
1195 -> Index Scan using t2_pkey on t2 bmt2
1196 -> Bitmap Heap Scan on t3 bmt3
1197 Recheck Cond: (c1 = bmt1.c1)
1198 -> Bitmap Index Scan on t3_pkey
1199 Index Cond: (c1 = bmt1.c1)
1203 EXPLAIN (COSTS false)
1205 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1207 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1209 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1213 -------------------------------------------------------------------
1218 Merge Cond: (b1t1.c1 = b1t2.c1)
1220 Merge Cond: (b1t1.c1 = b1t4.c1)
1222 Merge Cond: (b1t1.c1 = b1t3.c1)
1223 -> Index Scan using t1_i1 on t1 b1t1
1224 -> Index Scan using t3_i1 on t3 b1t3
1225 -> Index Scan using t4_i1 on t4 b1t4
1228 -> Seq Scan on t2 b1t2
1230 Merge Cond: (bmt1.c1 = bmt2.c1)
1232 Merge Cond: (bmt1.c1 = bmt4.c1)
1234 Merge Cond: (bmt1.c1 = bmt3.c1)
1235 -> Index Scan using t1_i1 on t1 bmt1
1236 -> Index Scan using t3_i1 on t3 bmt3
1237 -> Index Scan using t4_i1 on t4 bmt4
1241 Hash Cond: (bmt2.c1 = c1.c1)
1242 -> Seq Scan on t2 bmt2
1247 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1248 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1250 EXPLAIN (COSTS false)
1252 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1254 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1256 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1263 IndexScan(b1t3 t3_pkey)
1264 BitmapScan(b1t4 t4_pkey)
1266 IndexScan(bmt2 t2_pkey)
1267 BitmapScan(bmt3 t3_pkey)
1274 ---------------------------------------------------------------------
1279 Merge Cond: (b1t1.c1 = b1t2.c1)
1282 Merge Cond: (b1t1.c1 = b1t3.c1)
1285 -> Seq Scan on t1 b1t1
1286 -> Index Scan using t3_pkey on t3 b1t3
1287 -> Bitmap Heap Scan on t4 b1t4
1288 Recheck Cond: (c1 = b1t1.c1)
1289 -> Bitmap Index Scan on t4_pkey
1290 Index Cond: (c1 = b1t1.c1)
1293 -> Seq Scan on t2 b1t2
1295 Hash Cond: (bmt4.c1 = bmt1.c1)
1296 -> Seq Scan on t4 bmt4
1301 Hash Cond: (bmt1.c1 = c1.c1)
1302 -> Seq Scan on t1 bmt1
1305 -> Index Scan using t2_pkey on t2 bmt2
1306 Index Cond: (c1 = bmt1.c1)
1307 -> Bitmap Heap Scan on t3 bmt3
1308 Recheck Cond: (c1 = bmt1.c1)
1309 -> Bitmap Index Scan on t3_pkey
1310 Index Cond: (c1 = bmt1.c1)
1314 EXPLAIN (COSTS false)
1316 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1319 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1321 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1323 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1328 -------------------------------------------------------------------
1333 Merge Cond: (b1t1.c1 = b1t2.c1)
1335 Merge Cond: (b1t1.c1 = b1t4.c1)
1337 Merge Cond: (b1t1.c1 = b1t3.c1)
1338 -> Index Scan using t1_i1 on t1 b1t1
1339 -> Index Scan using t3_i1 on t3 b1t3
1340 -> Index Scan using t4_i1 on t4 b1t4
1343 -> Seq Scan on t2 b1t2
1347 Merge Cond: (b2t1.c1 = b2t2.c1)
1349 Merge Cond: (b2t1.c1 = b2t4.c1)
1351 Merge Cond: (b2t1.c1 = b2t3.c1)
1352 -> Index Scan using t1_i1 on t1 b2t1
1353 -> Index Scan using t3_i1 on t3 b2t3
1354 -> Index Scan using t4_i1 on t4 b2t4
1357 -> Seq Scan on t2 b2t2
1359 Join Filter: (bmt1.c1 = c2.c1)
1361 Merge Cond: (bmt1.c1 = bmt2.c1)
1363 Merge Cond: (bmt1.c1 = bmt4.c1)
1365 Merge Cond: (bmt1.c1 = bmt3.c1)
1366 -> Index Scan using t1_i1 on t1 bmt1
1367 -> Index Scan using t3_i1 on t3 bmt3
1368 -> Index Scan using t4_i1 on t4 bmt4
1372 Hash Cond: (bmt2.c1 = c1.c1)
1373 -> Seq Scan on t2 bmt2
1379 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1380 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1381 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1383 EXPLAIN (COSTS false)
1385 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.c1 = b1t2.c1 AND b1t1.c1 = b1t3.c1 AND b1t1.c1 = b1t4.c1
1388 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.c1 = b2t2.c1 AND b2t1.c1 = b2t3.c1 AND b2t1.c1 = b2t4.c1
1390 SELECT max(bmt1.c1) FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4
1392 WHERE bmt1.c1 = bmt2.c1 AND bmt1.c1 = bmt3.c1 AND bmt1.c1 = bmt4.c1
1400 IndexScan(b1t3 t3_pkey)
1401 BitmapScan(b1t4 t4_pkey)
1402 BitmapScan(b2t1 t1_pkey)
1405 IndexScan(b2t4 t4_pkey)
1407 IndexScan(bmt2 t2_pkey)
1408 BitmapScan(bmt3 t3_pkey)
1415 ---------------------------------------------------------------------------
1420 Merge Cond: (b1t1.c1 = b1t2.c1)
1423 Merge Cond: (b1t1.c1 = b1t3.c1)
1426 -> Seq Scan on t1 b1t1
1427 -> Index Scan using t3_pkey on t3 b1t3
1428 -> Bitmap Heap Scan on t4 b1t4
1429 Recheck Cond: (c1 = b1t1.c1)
1430 -> Bitmap Index Scan on t4_pkey
1431 Index Cond: (c1 = b1t1.c1)
1434 -> Seq Scan on t2 b1t2
1438 Hash Cond: (b2t3.c1 = b2t1.c1)
1439 -> Seq Scan on t3 b2t3
1442 Merge Cond: (b2t1.c1 = b2t2.c1)
1444 -> Index Scan using t4_pkey on t4 b2t4
1445 -> Bitmap Heap Scan on t1 b2t1
1446 Recheck Cond: (c1 = b2t4.c1)
1447 -> Bitmap Index Scan on t1_pkey
1448 Index Cond: (c1 = b2t4.c1)
1451 -> Seq Scan on t2 b2t2
1453 Hash Cond: (bmt4.c1 = bmt1.c1)
1454 -> Seq Scan on t4 bmt4
1458 Join Filter: (bmt1.c1 = c2.c1)
1461 Hash Cond: (bmt1.c1 = c1.c1)
1462 -> Seq Scan on t1 bmt1
1465 -> Index Scan using t2_pkey on t2 bmt2
1466 Index Cond: (c1 = bmt1.c1)
1468 -> Bitmap Heap Scan on t3 bmt3
1469 Recheck Cond: (c1 = bmt1.c1)
1470 -> Bitmap Index Scan on t3_pkey
1471 Index Cond: (c1 = bmt1.c1)
1475 ---- No. S-2-2 the number of the tables per quiry block
1478 EXPLAIN (COSTS false)
1480 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = 1
1482 SELECT max(bmt1.c1), (
1483 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1485 FROM s1.t1 bmt1, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = 1
1487 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = 1
1491 -----------------------------------------------------------------
1495 InitPlan 1 (returns $0)
1497 -> Tid Scan on t1 b1t1
1498 TID Cond: (ctid = '(1,1)'::tid)
1499 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1500 InitPlan 4 (returns $3)
1502 InitPlan 3 (returns $2)
1504 -> Tid Scan on t1 b2t1
1505 TID Cond: (ctid = '(1,1)'::tid)
1506 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1507 InitPlan 6 (returns $5)
1509 InitPlan 5 (returns $4)
1511 -> Tid Scan on t1 b3t1
1512 TID Cond: (ctid = '(1,1)'::tid)
1513 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1515 -> Tid Scan on t1 bmt1
1516 TID Cond: (ctid = '(1,1)'::tid)
1517 Filter: ((c1 <> $5) AND (c1 = 1))
1523 BitmapScan(b2t1 t1_pkey)
1524 IndexScan(b3t1 t1_pkey)
1526 EXPLAIN (COSTS false)
1528 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = 1
1530 SELECT max(bmt1.c1), (
1531 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1533 FROM s1.t1 bmt1, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = 1
1535 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = 1
1541 BitmapScan(b2t1 t1_pkey)
1542 IndexScan(b3t1 t1_pkey)
1549 ---------------------------------------------------------------------------
1553 InitPlan 1 (returns $0)
1555 -> Tid Scan on t1 b1t1
1556 TID Cond: (ctid = '(1,1)'::tid)
1557 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1558 InitPlan 4 (returns $3)
1560 InitPlan 3 (returns $2)
1562 -> Bitmap Heap Scan on t1 b2t1
1563 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1564 Filter: (ctid = '(1,1)'::tid)
1565 -> Bitmap Index Scan on t1_pkey
1566 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1567 InitPlan 6 (returns $5)
1569 InitPlan 5 (returns $4)
1571 -> Index Scan using t1_pkey on t1 b3t1
1572 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
1573 Filter: (ctid = '(1,1)'::tid)
1575 -> Seq Scan on t1 bmt1
1576 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid) AND (c1 = 1))
1581 EXPLAIN (COSTS false)
1583 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)'
1585 SELECT max(bmt1.c1), (
1586 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)'
1588 FROM s1.t1 bmt1, s1.t2 bmt2, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)'
1590 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)'
1594 -------------------------------------------------------
1599 Join Filter: (b1t1.c1 = b1t2.c1)
1600 -> Tid Scan on t1 b1t1
1601 TID Cond: (ctid = '(1,1)'::tid)
1602 -> Seq Scan on t2 b1t2
1603 Filter: (ctid = '(1,1)'::tid)
1604 InitPlan 2 (returns $1)
1607 Join Filter: (b2t1.c1 = b2t2.c1)
1608 -> Tid Scan on t1 b2t1
1609 TID Cond: (ctid = '(1,1)'::tid)
1610 -> Seq Scan on t2 b2t2
1611 Filter: (ctid = '(1,1)'::tid)
1612 InitPlan 3 (returns $2)
1615 Join Filter: (b3t1.c1 = b3t2.c1)
1616 -> Tid Scan on t1 b3t1
1617 TID Cond: (ctid = '(1,1)'::tid)
1618 -> Seq Scan on t2 b3t2
1619 Filter: (ctid = '(1,1)'::tid)
1622 Join Filter: (bmt1.c1 = bmt2.c1)
1623 -> Tid Scan on t1 bmt1
1624 TID Cond: (ctid = '(1,1)'::tid)
1626 -> Seq Scan on t2 bmt2
1627 Filter: (ctid = '(1,1)'::tid)
1631 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)
1632 TidScan(b1t1)SeqScan(b1t2)
1633 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)
1634 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)
1636 EXPLAIN (COSTS false)
1638 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)'
1640 SELECT max(bmt1.c1), (
1641 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)'
1643 FROM s1.t1 bmt1, s1.t2 bmt2, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)'
1645 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)'
1652 BitmapScan(b2t1 t1_pkey)
1654 IndexScan(b3t1 t1_pkey)
1655 BitmapScan(b3t2 t2_pkey)
1657 IndexScan(bmt2 t2_pkey)
1663 --------------------------------------------------------------------
1668 Join Filter: (b1t1.c1 = b1t2.c1)
1669 -> Tid Scan on t1 b1t1
1670 TID Cond: (ctid = '(1,1)'::tid)
1671 -> Seq Scan on t2 b1t2
1672 Filter: (ctid = '(1,1)'::tid)
1673 InitPlan 2 (returns $2)
1676 -> Tid Scan on t2 b2t2
1677 TID Cond: (ctid = '(1,1)'::tid)
1678 -> Bitmap Heap Scan on t1 b2t1
1679 Recheck Cond: (c1 = b2t2.c1)
1680 Filter: (ctid = '(1,1)'::tid)
1681 -> Bitmap Index Scan on t1_pkey
1682 Index Cond: (c1 = b2t2.c1)
1683 InitPlan 3 (returns $4)
1686 -> Index Scan using t1_pkey on t1 b3t1
1687 Filter: (ctid = '(1,1)'::tid)
1688 -> Bitmap Heap Scan on t2 b3t2
1689 Recheck Cond: (c1 = b3t1.c1)
1690 Filter: (ctid = '(1,1)'::tid)
1691 -> Bitmap Index Scan on t2_pkey
1692 Index Cond: (c1 = b3t1.c1)
1695 -> Seq Scan on t1 bmt1
1696 Filter: ((c1 <> $4) AND (ctid = '(1,1)'::tid))
1697 -> Index Scan using t2_pkey on t2 bmt2
1698 Index Cond: (c1 = bmt1.c1)
1699 Filter: (ctid = '(1,1)'::tid)
1704 EXPLAIN (COSTS false)
1706 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
1708 SELECT max(bmt1.c1), (
1709 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)' AND b2t1.c1 = b2t3.c1 AND b2t3.ctid = '(1,1)' AND b2t1.c1 = b2t4.c1 AND b2t4.ctid = '(1,1)'
1711 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
1713 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2, s1.t3 b3t3, s1.t4 b3t4 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)' AND b3t1.c1 = b3t3.c1 AND b3t3.ctid = '(1,1)' AND b3t1.c1 = b3t4.c1 AND b3t4.ctid = '(1,1)'
1717 -------------------------------------------------------------------
1722 Join Filter: (b1t1.c1 = b1t4.c1)
1724 Join Filter: (b1t1.c1 = b1t3.c1)
1726 Join Filter: (b1t1.c1 = b1t2.c1)
1727 -> Tid Scan on t1 b1t1
1728 TID Cond: (ctid = '(1,1)'::tid)
1729 -> Seq Scan on t2 b1t2
1730 Filter: (ctid = '(1,1)'::tid)
1731 -> Tid Scan on t3 b1t3
1732 TID Cond: (ctid = '(1,1)'::tid)
1733 -> Tid Scan on t4 b1t4
1734 TID Cond: (ctid = '(1,1)'::tid)
1735 InitPlan 2 (returns $1)
1738 Join Filter: (b2t1.c1 = b2t4.c1)
1740 Join Filter: (b2t1.c1 = b2t3.c1)
1742 Join Filter: (b2t1.c1 = b2t2.c1)
1743 -> Tid Scan on t1 b2t1
1744 TID Cond: (ctid = '(1,1)'::tid)
1745 -> Seq Scan on t2 b2t2
1746 Filter: (ctid = '(1,1)'::tid)
1747 -> Tid Scan on t3 b2t3
1748 TID Cond: (ctid = '(1,1)'::tid)
1749 -> Tid Scan on t4 b2t4
1750 TID Cond: (ctid = '(1,1)'::tid)
1751 InitPlan 3 (returns $2)
1754 Join Filter: (b3t1.c1 = b3t4.c1)
1756 Join Filter: (b3t1.c1 = b3t3.c1)
1758 Join Filter: (b3t1.c1 = b3t2.c1)
1759 -> Tid Scan on t1 b3t1
1760 TID Cond: (ctid = '(1,1)'::tid)
1761 -> Seq Scan on t2 b3t2
1762 Filter: (ctid = '(1,1)'::tid)
1763 -> Tid Scan on t3 b3t3
1764 TID Cond: (ctid = '(1,1)'::tid)
1765 -> Tid Scan on t4 b3t4
1766 TID Cond: (ctid = '(1,1)'::tid)
1768 Join Filter: (bmt1.c1 = c1.c1)
1770 Join Filter: (bmt1.c1 = bmt2.c1)
1772 Join Filter: (bmt3.c1 = bmt1.c1)
1774 Join Filter: (bmt3.c1 = bmt4.c1)
1775 -> Tid Scan on t3 bmt3
1776 TID Cond: (ctid = '(1,1)'::tid)
1777 -> Tid Scan on t4 bmt4
1778 TID Cond: (ctid = '(1,1)'::tid)
1779 -> Tid Scan on t1 bmt1
1780 TID Cond: (ctid = '(1,1)'::tid)
1782 -> Seq Scan on t2 bmt2
1783 Filter: (ctid = '(1,1)'::tid)
1787 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1788 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1789 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
1790 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)TidScan(b3t3)SeqScan(b3t4)
1792 EXPLAIN (COSTS false)
1794 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
1796 SELECT max(bmt1.c1), (
1797 SELECT max(b2t1.c1) FROM s1.t1 b2t1, s1.t2 b2t2, s1.t3 b2t3, s1.t4 b2t4 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = b2t2.c1 AND b2t2.ctid = '(1,1)' AND b2t1.c1 = b2t3.c1 AND b2t3.ctid = '(1,1)' AND b2t1.c1 = b2t4.c1 AND b2t4.ctid = '(1,1)'
1799 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
1801 SELECT max(b3t1.c1) FROM s1.t1 b3t1, s1.t2 b3t2, s1.t3 b3t3, s1.t4 b3t4 WHERE b3t1.ctid = '(1,1)' AND b3t1.c1 = b3t2.c1 AND b3t2.ctid = '(1,1)' AND b3t1.c1 = b3t3.c1 AND b3t3.ctid = '(1,1)' AND b3t1.c1 = b3t4.c1 AND b3t4.ctid = '(1,1)'
1808 IndexScan(b1t3 t3_pkey)
1809 BitmapScan(b1t4 t4_pkey)
1810 BitmapScan(b2t1 t1_pkey)
1813 IndexScan(b2t4 t4_pkey)
1814 IndexScan(b3t1 t1_pkey)
1815 BitmapScan(b3t2 t2_pkey)
1819 IndexScan(bmt2 t2_pkey)
1820 BitmapScan(bmt3 t3_pkey)
1827 --------------------------------------------------------------------------------
1834 Join Filter: (b1t1.c1 = b1t2.c1)
1835 -> Tid Scan on t1 b1t1
1836 TID Cond: (ctid = '(1,1)'::tid)
1837 -> Seq Scan on t2 b1t2
1838 Filter: (ctid = '(1,1)'::tid)
1839 -> Index Scan using t3_pkey on t3 b1t3
1840 Index Cond: (c1 = b1t1.c1)
1841 Filter: (ctid = '(1,1)'::tid)
1842 -> Bitmap Heap Scan on t4 b1t4
1843 Recheck Cond: (c1 = b1t1.c1)
1844 Filter: (ctid = '(1,1)'::tid)
1845 -> Bitmap Index Scan on t4_pkey
1846 Index Cond: (c1 = b1t1.c1)
1847 InitPlan 2 (returns $3)
1851 Join Filter: (b2t1.c1 = b2t3.c1)
1853 -> Tid Scan on t2 b2t2
1854 TID Cond: (ctid = '(1,1)'::tid)
1855 -> Bitmap Heap Scan on t1 b2t1
1856 Recheck Cond: (c1 = b2t2.c1)
1857 Filter: (ctid = '(1,1)'::tid)
1858 -> Bitmap Index Scan on t1_pkey
1859 Index Cond: (c1 = b2t2.c1)
1860 -> Seq Scan on t3 b2t3
1861 Filter: (ctid = '(1,1)'::tid)
1862 -> Index Scan using t4_pkey on t4 b2t4
1863 Index Cond: (c1 = b2t1.c1)
1864 Filter: (ctid = '(1,1)'::tid)
1865 InitPlan 3 (returns $5)
1870 Join Filter: (b3t3.c1 = b3t4.c1)
1871 -> Tid Scan on t3 b3t3
1872 TID Cond: (ctid = '(1,1)'::tid)
1873 -> Seq Scan on t4 b3t4
1874 Filter: (ctid = '(1,1)'::tid)
1875 -> Bitmap Heap Scan on t2 b3t2
1876 Recheck Cond: (c1 = b3t3.c1)
1877 Filter: (ctid = '(1,1)'::tid)
1878 -> Bitmap Index Scan on t2_pkey
1879 Index Cond: (c1 = b3t3.c1)
1880 -> Index Scan using t1_pkey on t1 b3t1
1881 Index Cond: (c1 = b3t2.c1)
1882 Filter: (ctid = '(1,1)'::tid)
1885 Join Filter: (bmt1.c1 = c1.c1)
1887 Join Filter: (bmt1.c1 = bmt4.c1)
1889 -> Seq Scan on t1 bmt1
1890 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid))
1891 -> Bitmap Heap Scan on t3 bmt3
1892 Recheck Cond: (c1 = bmt1.c1)
1893 Filter: (ctid = '(1,1)'::tid)
1894 -> Bitmap Index Scan on t3_pkey
1895 Index Cond: (c1 = bmt1.c1)
1896 -> Tid Scan on t4 bmt4
1897 TID Cond: (ctid = '(1,1)'::tid)
1899 -> Index Scan using t2_pkey on t2 bmt2
1900 Index Cond: (c1 = bmt1.c1)
1901 Filter: (ctid = '(1,1)'::tid)
1905 EXPLAIN (COSTS false)
1907 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
1909 SELECT max(bmt1.c1), (
1910 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1912 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
1914 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)'
1918 -------------------------------------------------------------------
1923 Join Filter: (b1t1.c1 = b1t4.c1)
1925 Join Filter: (b1t1.c1 = b1t3.c1)
1927 Join Filter: (b1t1.c1 = b1t2.c1)
1928 -> Tid Scan on t1 b1t1
1929 TID Cond: (ctid = '(1,1)'::tid)
1930 -> Seq Scan on t2 b1t2
1931 Filter: (ctid = '(1,1)'::tid)
1932 -> Tid Scan on t3 b1t3
1933 TID Cond: (ctid = '(1,1)'::tid)
1934 -> Tid Scan on t4 b1t4
1935 TID Cond: (ctid = '(1,1)'::tid)
1936 InitPlan 3 (returns $2)
1938 InitPlan 2 (returns $1)
1940 -> Tid Scan on t1 b2t1
1941 TID Cond: (ctid = '(1,1)'::tid)
1942 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
1943 InitPlan 4 (returns $3)
1945 -> Tid Scan on t1 b3t1
1946 TID Cond: (ctid = '(1,1)'::tid)
1948 Join Filter: (bmt1.c1 = c1.c1)
1950 Join Filter: (bmt1.c1 = bmt2.c1)
1952 Join Filter: (bmt3.c1 = bmt1.c1)
1954 Join Filter: (bmt3.c1 = bmt4.c1)
1955 -> Tid Scan on t3 bmt3
1956 TID Cond: (ctid = '(1,1)'::tid)
1957 -> Tid Scan on t4 bmt4
1958 TID Cond: (ctid = '(1,1)'::tid)
1959 -> Tid Scan on t1 bmt1
1960 TID Cond: (ctid = '(1,1)'::tid)
1962 -> Seq Scan on t2 bmt2
1963 Filter: (ctid = '(1,1)'::tid)
1967 /*+SeqScan(bmt1)IndexScan(bmt2 t2_pkey)BitmapScan(bmt3 t3_pkey)TidScan(bmt4)
1968 TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
1969 BitmapScan(b2t1 t1_pkey)
1970 IndexScan(b3t1 t1_pkey)
1972 EXPLAIN (COSTS false)
1974 SELECT max(b1t1.c1) FROM s1.t1 b1t1, s1.t2 b1t2, s1.t3 b1t3, s1.t4 b1t4 WHERE b1t1.ctid = '(1,1)' AND b1t1.c1 = b1t2.c1 AND b1t2.ctid = '(1,1)' AND b1t1.c1 = b1t3.c1 AND b1t3.ctid = '(1,1)' AND b1t1.c1 = b1t4.c1 AND b1t4.ctid = '(1,1)'
1976 SELECT max(bmt1.c1), (
1977 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.ctid = '(1,1)' AND b2t1.c1 = 1
1979 FROM s1.t1 bmt1, s1.t2 bmt2, s1.t3 bmt3, s1.t4 bmt4, c1 WHERE bmt1.ctid = '(1,1)' AND bmt1.c1 = bmt2.c1 AND bmt2.ctid = '(1,1)' AND bmt1.c1 = bmt3.c1 AND bmt3.ctid = '(1,1)' AND bmt1.c1 = bmt4.c1 AND bmt4.ctid = '(1,1)' AND bmt1.c1 = c1.c1
1981 SELECT max(b3t1.c1) FROM s1.t1 b3t1 WHERE b3t1.ctid = '(1,1)'
1988 IndexScan(b1t3 t3_pkey)
1989 BitmapScan(b1t4 t4_pkey)
1990 BitmapScan(b2t1 t1_pkey)
1991 IndexScan(b3t1 t1_pkey)
1993 IndexScan(bmt2 t2_pkey)
1994 BitmapScan(bmt3 t3_pkey)
2001 --------------------------------------------------------------------------------
2008 Join Filter: (b1t1.c1 = b1t2.c1)
2009 -> Tid Scan on t1 b1t1
2010 TID Cond: (ctid = '(1,1)'::tid)
2011 -> Seq Scan on t2 b1t2
2012 Filter: (ctid = '(1,1)'::tid)
2013 -> Index Scan using t3_pkey on t3 b1t3
2014 Index Cond: (c1 = b1t1.c1)
2015 Filter: (ctid = '(1,1)'::tid)
2016 -> Bitmap Heap Scan on t4 b1t4
2017 Recheck Cond: (c1 = b1t1.c1)
2018 Filter: (ctid = '(1,1)'::tid)
2019 -> Bitmap Index Scan on t4_pkey
2020 Index Cond: (c1 = b1t1.c1)
2021 InitPlan 3 (returns $3)
2023 InitPlan 2 (returns $2)
2025 -> Bitmap Heap Scan on t1 b2t1
2026 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = 1))
2027 Filter: (ctid = '(1,1)'::tid)
2028 -> Bitmap Index Scan on t1_pkey
2029 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
2030 InitPlan 5 (returns $5)
2032 InitPlan 4 (returns $4)
2034 -> Index Scan Backward using t1_pkey on t1 b3t1
2035 Index Cond: (c1 IS NOT NULL)
2036 Filter: (ctid = '(1,1)'::tid)
2039 Join Filter: (bmt1.c1 = c1.c1)
2041 Join Filter: (bmt1.c1 = bmt4.c1)
2043 -> Seq Scan on t1 bmt1
2044 Filter: ((c1 <> $5) AND (ctid = '(1,1)'::tid))
2045 -> Bitmap Heap Scan on t3 bmt3
2046 Recheck Cond: (c1 = bmt1.c1)
2047 Filter: (ctid = '(1,1)'::tid)
2048 -> Bitmap Index Scan on t3_pkey
2049 Index Cond: (c1 = bmt1.c1)
2050 -> Tid Scan on t4 bmt4
2051 TID Cond: (ctid = '(1,1)'::tid)
2053 -> Index Scan using t2_pkey on t2 bmt2
2054 Index Cond: (c1 = bmt1.c1)
2055 Filter: (ctid = '(1,1)'::tid)
2059 ---- No. S-2-3 RULE definition table
2062 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2064 -----------------------------------------------------------------
2067 Join Filter: (t1.c1 = t4.c1)
2069 Join Filter: (t1.c1 = t3.c1)
2071 Join Filter: (t2.c1 = t1.c1)
2074 TID Cond: (ctid = '(1,1)'::tid)
2077 Filter: (ctid = '(1,1)'::tid)
2079 TID Cond: (ctid = '(1,1)'::tid)
2081 TID Cond: (ctid = '(1,1)'::tid)
2083 TID Cond: (ctid = '(1,1)'::tid)
2086 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2088 EXPLAIN (COSTS false) UPDATE s1.r1 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2094 IndexScan(t3 t3_pkey)
2095 BitmapScan(t4 t4_pkey)
2101 ------------------------------------------------------------------------
2105 Join Filter: (t2.c1 = t1.c1)
2109 Filter: (ctid = '(1,1)'::tid)
2110 -> Index Scan using t3_pkey on t3
2111 Index Cond: (c1 = t2.c1)
2112 Filter: (ctid = '(1,1)'::tid)
2114 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2116 TID Cond: (ctid = '(1,1)'::tid)
2117 -> Bitmap Heap Scan on t4
2118 Recheck Cond: (c1 = t1.c1)
2119 Filter: (ctid = '(1,1)'::tid)
2120 -> Bitmap Index Scan on t4_pkey
2121 Index Cond: (c1 = t1.c1)
2124 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2126 -----------------------------------------------------------------
2129 Join Filter: (b1t1.c1 = b1t4.c1)
2131 Join Filter: (b1t1.c1 = b1t3.c1)
2133 Join Filter: (b1t2.c1 = b1t1.c1)
2136 TID Cond: (ctid = '(1,1)'::tid)
2138 -> Seq Scan on t2 b1t2
2139 Filter: (ctid = '(1,1)'::tid)
2140 -> Tid Scan on t1 b1t1
2141 TID Cond: (ctid = '(1,1)'::tid)
2142 -> Tid Scan on t3 b1t3
2143 TID Cond: (ctid = '(1,1)'::tid)
2144 -> Tid Scan on t4 b1t4
2145 TID Cond: (ctid = '(1,1)'::tid)
2148 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2150 EXPLAIN (COSTS false) UPDATE s1.r1_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2155 IndexScan(b1t3 t3_pkey)
2156 BitmapScan(b1t4 t4_pkey)
2163 ------------------------------------------------------------------------
2167 Join Filter: (b1t2.c1 = b1t1.c1)
2170 -> Seq Scan on t2 b1t2
2171 Filter: (ctid = '(1,1)'::tid)
2172 -> Index Scan using t3_pkey on t3 b1t3
2173 Index Cond: (c1 = b1t2.c1)
2174 Filter: (ctid = '(1,1)'::tid)
2176 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2177 -> Tid Scan on t1 b1t1
2178 TID Cond: (ctid = '(1,1)'::tid)
2179 -> Bitmap Heap Scan on t4 b1t4
2180 Recheck Cond: (c1 = b1t1.c1)
2181 Filter: (ctid = '(1,1)'::tid)
2182 -> Bitmap Index Scan on t4_pkey
2183 Index Cond: (c1 = b1t1.c1)
2187 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2189 -----------------------------------------------------------------
2192 Join Filter: (t1.c1 = t4.c1)
2194 Join Filter: (t1.c1 = t3.c1)
2196 Join Filter: (t2.c1 = t1.c1)
2199 TID Cond: (ctid = '(1,1)'::tid)
2202 Filter: (ctid = '(1,1)'::tid)
2204 TID Cond: (ctid = '(1,1)'::tid)
2206 TID Cond: (ctid = '(1,1)'::tid)
2208 TID Cond: (ctid = '(1,1)'::tid)
2212 Join Filter: (t1.c1 = t4.c1)
2214 Join Filter: (t1.c1 = t3.c1)
2216 Join Filter: (t2.c1 = t1.c1)
2219 TID Cond: (ctid = '(1,1)'::tid)
2222 Filter: (ctid = '(1,1)'::tid)
2224 TID Cond: (ctid = '(1,1)'::tid)
2226 TID Cond: (ctid = '(1,1)'::tid)
2228 TID Cond: (ctid = '(1,1)'::tid)
2231 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2233 EXPLAIN (COSTS false) UPDATE s1.r2 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2239 IndexScan(t3 t3_pkey)
2240 BitmapScan(t4 t4_pkey)
2250 IndexScan(t3 t3_pkey)
2251 BitmapScan(t4 t4_pkey)
2257 ------------------------------------------------------------------------
2261 Join Filter: (t2.c1 = t1.c1)
2265 Filter: (ctid = '(1,1)'::tid)
2266 -> Index Scan using t3_pkey on t3
2267 Index Cond: (c1 = t2.c1)
2268 Filter: (ctid = '(1,1)'::tid)
2270 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2272 TID Cond: (ctid = '(1,1)'::tid)
2273 -> Bitmap Heap Scan on t4
2274 Recheck Cond: (c1 = t1.c1)
2275 Filter: (ctid = '(1,1)'::tid)
2276 -> Bitmap Index Scan on t4_pkey
2277 Index Cond: (c1 = t1.c1)
2282 Join Filter: (t2.c1 = t1.c1)
2286 Filter: (ctid = '(1,1)'::tid)
2287 -> Index Scan using t3_pkey on t3
2288 Index Cond: (c1 = t2.c1)
2289 Filter: (ctid = '(1,1)'::tid)
2291 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2293 TID Cond: (ctid = '(1,1)'::tid)
2294 -> Bitmap Heap Scan on t4
2295 Recheck Cond: (c1 = t1.c1)
2296 Filter: (ctid = '(1,1)'::tid)
2297 -> Bitmap Index Scan on t4_pkey
2298 Index Cond: (c1 = t1.c1)
2301 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2303 -----------------------------------------------------------------
2306 Join Filter: (b1t1.c1 = b1t4.c1)
2308 Join Filter: (b1t1.c1 = b1t3.c1)
2310 Join Filter: (b1t2.c1 = b1t1.c1)
2313 TID Cond: (ctid = '(1,1)'::tid)
2315 -> Seq Scan on t2 b1t2
2316 Filter: (ctid = '(1,1)'::tid)
2317 -> Tid Scan on t1 b1t1
2318 TID Cond: (ctid = '(1,1)'::tid)
2319 -> Tid Scan on t3 b1t3
2320 TID Cond: (ctid = '(1,1)'::tid)
2321 -> Tid Scan on t4 b1t4
2322 TID Cond: (ctid = '(1,1)'::tid)
2326 Join Filter: (b2t1.c1 = b2t4.c1)
2328 Join Filter: (b2t1.c1 = b2t3.c1)
2330 Join Filter: (b2t2.c1 = b2t1.c1)
2333 TID Cond: (ctid = '(1,1)'::tid)
2335 -> Seq Scan on t2 b2t2
2336 Filter: (ctid = '(1,1)'::tid)
2337 -> Tid Scan on t1 b2t1
2338 TID Cond: (ctid = '(1,1)'::tid)
2339 -> Tid Scan on t3 b2t3
2340 TID Cond: (ctid = '(1,1)'::tid)
2341 -> Tid Scan on t4 b2t4
2342 TID Cond: (ctid = '(1,1)'::tid)
2345 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2346 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
2348 EXPLAIN (COSTS false) UPDATE s1.r2_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2353 IndexScan(b1t3 t3_pkey)
2354 BitmapScan(b1t4 t4_pkey)
2357 BitmapScan(b2t1 t1_pkey)
2360 IndexScan(b2t4 t4_pkey)
2366 BitmapScan(b2t1 t1_pkey)
2369 IndexScan(b2t4 t4_pkey)
2374 IndexScan(b1t3 t3_pkey)
2375 BitmapScan(b1t4 t4_pkey)
2380 ------------------------------------------------------------------------
2384 Join Filter: (b1t2.c1 = b1t1.c1)
2387 -> Seq Scan on t2 b1t2
2388 Filter: (ctid = '(1,1)'::tid)
2389 -> Index Scan using t3_pkey on t3 b1t3
2390 Index Cond: (c1 = b1t2.c1)
2391 Filter: (ctid = '(1,1)'::tid)
2393 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2394 -> Tid Scan on t1 b1t1
2395 TID Cond: (ctid = '(1,1)'::tid)
2396 -> Bitmap Heap Scan on t4 b1t4
2397 Recheck Cond: (c1 = b1t1.c1)
2398 Filter: (ctid = '(1,1)'::tid)
2399 -> Bitmap Index Scan on t4_pkey
2400 Index Cond: (c1 = b1t1.c1)
2407 Join Filter: (b2t2.c1 = b2t3.c1)
2408 -> Tid Scan on t2 b2t2
2409 TID Cond: (ctid = '(1,1)'::tid)
2410 -> Seq Scan on t3 b2t3
2411 Filter: (ctid = '(1,1)'::tid)
2413 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2414 -> Bitmap Heap Scan on t1 b2t1
2415 Recheck Cond: (c1 = b2t2.c1)
2416 Filter: (ctid = '(1,1)'::tid)
2417 -> Bitmap Index Scan on t1_pkey
2418 Index Cond: (c1 = b2t2.c1)
2419 -> Index Scan using t4_pkey on t4 b2t4
2420 Index Cond: (c1 = b2t1.c1)
2421 Filter: (ctid = '(1,1)'::tid)
2425 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2427 -----------------------------------------------------------------
2430 Join Filter: (t1.c1 = t4.c1)
2432 Join Filter: (t1.c1 = t3.c1)
2434 Join Filter: (t2.c1 = t1.c1)
2437 TID Cond: (ctid = '(1,1)'::tid)
2440 Filter: (ctid = '(1,1)'::tid)
2442 TID Cond: (ctid = '(1,1)'::tid)
2444 TID Cond: (ctid = '(1,1)'::tid)
2446 TID Cond: (ctid = '(1,1)'::tid)
2450 Join Filter: (t1.c1 = t4.c1)
2452 Join Filter: (t1.c1 = t3.c1)
2454 Join Filter: (t2.c1 = t1.c1)
2457 TID Cond: (ctid = '(1,1)'::tid)
2460 Filter: (ctid = '(1,1)'::tid)
2462 TID Cond: (ctid = '(1,1)'::tid)
2464 TID Cond: (ctid = '(1,1)'::tid)
2466 TID Cond: (ctid = '(1,1)'::tid)
2470 Join Filter: (t1.c1 = t4.c1)
2472 Join Filter: (t1.c1 = t3.c1)
2474 Join Filter: (t2.c1 = t1.c1)
2477 TID Cond: (ctid = '(1,1)'::tid)
2480 Filter: (ctid = '(1,1)'::tid)
2482 TID Cond: (ctid = '(1,1)'::tid)
2484 TID Cond: (ctid = '(1,1)'::tid)
2486 TID Cond: (ctid = '(1,1)'::tid)
2489 /*+TidScan(t1)SeqScan(t2)IndexScan(t3 t3_pkey)BitmapScan(t4 t4_pkey)
2491 EXPLAIN (COSTS false) UPDATE s1.r3 SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2497 IndexScan(t3 t3_pkey)
2498 BitmapScan(t4 t4_pkey)
2508 IndexScan(t3 t3_pkey)
2509 BitmapScan(t4 t4_pkey)
2519 IndexScan(t3 t3_pkey)
2520 BitmapScan(t4 t4_pkey)
2526 ------------------------------------------------------------------------
2530 Join Filter: (t2.c1 = t1.c1)
2534 Filter: (ctid = '(1,1)'::tid)
2535 -> Index Scan using t3_pkey on t3
2536 Index Cond: (c1 = t2.c1)
2537 Filter: (ctid = '(1,1)'::tid)
2539 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2541 TID Cond: (ctid = '(1,1)'::tid)
2542 -> Bitmap Heap Scan on t4
2543 Recheck Cond: (c1 = t1.c1)
2544 Filter: (ctid = '(1,1)'::tid)
2545 -> Bitmap Index Scan on t4_pkey
2546 Index Cond: (c1 = t1.c1)
2551 Join Filter: (t2.c1 = t1.c1)
2555 Filter: (ctid = '(1,1)'::tid)
2556 -> Index Scan using t3_pkey on t3
2557 Index Cond: (c1 = t2.c1)
2558 Filter: (ctid = '(1,1)'::tid)
2560 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2562 TID Cond: (ctid = '(1,1)'::tid)
2563 -> Bitmap Heap Scan on t4
2564 Recheck Cond: (c1 = t1.c1)
2565 Filter: (ctid = '(1,1)'::tid)
2566 -> Bitmap Index Scan on t4_pkey
2567 Index Cond: (c1 = t1.c1)
2572 Join Filter: (t2.c1 = t1.c1)
2576 Filter: (ctid = '(1,1)'::tid)
2577 -> Index Scan using t3_pkey on t3
2578 Index Cond: (c1 = t2.c1)
2579 Filter: (ctid = '(1,1)'::tid)
2581 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2583 TID Cond: (ctid = '(1,1)'::tid)
2584 -> Bitmap Heap Scan on t4
2585 Recheck Cond: (c1 = t1.c1)
2586 Filter: (ctid = '(1,1)'::tid)
2587 -> Bitmap Index Scan on t4_pkey
2588 Index Cond: (c1 = t1.c1)
2591 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2593 -----------------------------------------------------------------
2596 Join Filter: (b1t1.c1 = b1t4.c1)
2598 Join Filter: (b1t1.c1 = b1t3.c1)
2600 Join Filter: (b1t2.c1 = b1t1.c1)
2603 TID Cond: (ctid = '(1,1)'::tid)
2605 -> Seq Scan on t2 b1t2
2606 Filter: (ctid = '(1,1)'::tid)
2607 -> Tid Scan on t1 b1t1
2608 TID Cond: (ctid = '(1,1)'::tid)
2609 -> Tid Scan on t3 b1t3
2610 TID Cond: (ctid = '(1,1)'::tid)
2611 -> Tid Scan on t4 b1t4
2612 TID Cond: (ctid = '(1,1)'::tid)
2616 Join Filter: (b2t1.c1 = b2t4.c1)
2618 Join Filter: (b2t1.c1 = b2t3.c1)
2620 Join Filter: (b2t2.c1 = b2t1.c1)
2623 TID Cond: (ctid = '(1,1)'::tid)
2625 -> Seq Scan on t2 b2t2
2626 Filter: (ctid = '(1,1)'::tid)
2627 -> Tid Scan on t1 b2t1
2628 TID Cond: (ctid = '(1,1)'::tid)
2629 -> Tid Scan on t3 b2t3
2630 TID Cond: (ctid = '(1,1)'::tid)
2631 -> Tid Scan on t4 b2t4
2632 TID Cond: (ctid = '(1,1)'::tid)
2636 Join Filter: (b3t1.c1 = b3t4.c1)
2638 Join Filter: (b3t1.c1 = b3t3.c1)
2640 Join Filter: (b3t2.c1 = b3t1.c1)
2643 TID Cond: (ctid = '(1,1)'::tid)
2645 -> Seq Scan on t2 b3t2
2646 Filter: (ctid = '(1,1)'::tid)
2647 -> Tid Scan on t1 b3t1
2648 TID Cond: (ctid = '(1,1)'::tid)
2649 -> Tid Scan on t3 b3t3
2650 TID Cond: (ctid = '(1,1)'::tid)
2651 -> Tid Scan on t4 b3t4
2652 TID Cond: (ctid = '(1,1)'::tid)
2655 /*+TidScan(b1t1)SeqScan(b1t2)IndexScan(b1t3 t3_pkey)BitmapScan(b1t4 t4_pkey)
2656 BitmapScan(b2t1 t1_pkey)TidScan(b2t2)SeqScan(b2t3)IndexScan(b2t4 t4_pkey)
2657 IndexScan(b3t1 t1_pkey)BitmapScan(b3t2 t2_pkey)TidScan(b3t3)SeqScan(b3t4)
2659 EXPLAIN (COSTS false) UPDATE s1.r3_ SET c1 = c1 WHERE c1 = 1 AND ctid = '(1,1)';
2664 IndexScan(b1t3 t3_pkey)
2665 BitmapScan(b1t4 t4_pkey)
2668 BitmapScan(b2t1 t1_pkey)
2671 IndexScan(b2t4 t4_pkey)
2672 IndexScan(b3t1 t1_pkey)
2673 BitmapScan(b3t2 t2_pkey)
2681 BitmapScan(b2t1 t1_pkey)
2684 IndexScan(b2t4 t4_pkey)
2689 IndexScan(b1t3 t3_pkey)
2690 BitmapScan(b1t4 t4_pkey)
2691 IndexScan(b3t1 t1_pkey)
2692 BitmapScan(b3t2 t2_pkey)
2700 IndexScan(b3t1 t1_pkey)
2701 BitmapScan(b3t2 t2_pkey)
2708 IndexScan(b1t3 t3_pkey)
2709 BitmapScan(b1t4 t4_pkey)
2710 BitmapScan(b2t1 t1_pkey)
2713 IndexScan(b2t4 t4_pkey)
2718 ------------------------------------------------------------------------
2722 Join Filter: (b1t2.c1 = b1t1.c1)
2725 -> Seq Scan on t2 b1t2
2726 Filter: (ctid = '(1,1)'::tid)
2727 -> Index Scan using t3_pkey on t3 b1t3
2728 Index Cond: (c1 = b1t2.c1)
2729 Filter: (ctid = '(1,1)'::tid)
2731 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2732 -> Tid Scan on t1 b1t1
2733 TID Cond: (ctid = '(1,1)'::tid)
2734 -> Bitmap Heap Scan on t4 b1t4
2735 Recheck Cond: (c1 = b1t1.c1)
2736 Filter: (ctid = '(1,1)'::tid)
2737 -> Bitmap Index Scan on t4_pkey
2738 Index Cond: (c1 = b1t1.c1)
2745 Join Filter: (b2t2.c1 = b2t3.c1)
2746 -> Tid Scan on t2 b2t2
2747 TID Cond: (ctid = '(1,1)'::tid)
2748 -> Seq Scan on t3 b2t3
2749 Filter: (ctid = '(1,1)'::tid)
2751 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2752 -> Bitmap Heap Scan on t1 b2t1
2753 Recheck Cond: (c1 = b2t2.c1)
2754 Filter: (ctid = '(1,1)'::tid)
2755 -> Bitmap Index Scan on t1_pkey
2756 Index Cond: (c1 = b2t2.c1)
2757 -> Index Scan using t4_pkey on t4 b2t4
2758 Index Cond: (c1 = b2t1.c1)
2759 Filter: (ctid = '(1,1)'::tid)
2763 Join Filter: (b3t1.c1 = b3t4.c1)
2767 -> Tid Scan on t3 b3t3
2768 TID Cond: (ctid = '(1,1)'::tid)
2769 -> Bitmap Heap Scan on t2 b3t2
2770 Recheck Cond: (c1 = b3t3.c1)
2771 Filter: (ctid = '(1,1)'::tid)
2772 -> Bitmap Index Scan on t2_pkey
2773 Index Cond: (c1 = b3t3.c1)
2775 Filter: ((ctid = '(1,1)'::tid) AND (c1 = 1))
2776 -> Index Scan using t1_pkey on t1 b3t1
2777 Index Cond: (c1 = b3t2.c1)
2778 Filter: (ctid = '(1,1)'::tid)
2779 -> Seq Scan on t4 b3t4
2780 Filter: (ctid = '(1,1)'::tid)
2784 ---- No. S-2-4 VALUES clause
2787 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2789 ---------------------------
2790 Values Scan on "*VALUES*"
2791 Filter: (column1 = 1)
2795 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2804 ---------------------------
2805 Values Scan on "*VALUES*"
2806 Filter: (column1 = 1)
2809 /*+SeqScan(*VALUES*)*/
2810 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1) WHERE t1.c1 = 1;
2819 ---------------------------
2820 Values Scan on "*VALUES*"
2821 Filter: (column1 = 1)
2825 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1, c2, c3, c4), (VALUES(1,1,1,'1'), (2,2,2,'2')) AS t2 (c1, c2) WHERE t1.c1 = t2.c1;
2827 ----------------------------------------------------------
2829 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2830 -> Values Scan on "*VALUES*"
2831 -> Values Scan on "*VALUES*"
2835 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1, c2, c3, c4), (VALUES(1,1,1,'1'), (2,2,2,'2')) AS t2 (c1, c2) WHERE t1.c1 = t2.c1;
2836 INFO: hint syntax error at or near "t2)"
2837 DETAIL: Closing parenthesis is necessary.
2839 ----------------------------------------------------------
2841 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2842 -> Values Scan on "*VALUES*"
2843 -> Values Scan on "*VALUES*"
2846 /*+SeqScan(*VALUES*)*/
2847 EXPLAIN (COSTS false) SELECT * FROM (VALUES(1,1,1,'1')) AS t1 (c1, c2, c3, c4), (VALUES(1,1,1,'1'), (2,2,2,'2')) AS t2 (c1, c2) WHERE t1.c1 = t2.c1;
2856 ----------------------------------------------------------
2858 Join Filter: ("*VALUES*".column1 = "*VALUES*".column1)
2859 -> Values Scan on "*VALUES*"
2860 -> Values Scan on "*VALUES*"
2864 ---- No. S-3-1 scan method hint
2867 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2869 ---------------------
2875 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2884 ---------------------
2890 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2892 ------------------------------
2893 Index Scan using t1_i1 on t1
2894 Index Cond: (c1 = 1)
2898 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2907 --------------------
2913 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2915 ------------------------------
2916 Index Scan using t1_i1 on t1
2917 Index Cond: (c1 = 1)
2921 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2930 ------------------------------
2931 Index Scan using t1_i1 on t1
2932 Index Cond: (c1 = 1)
2936 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2938 ---------------------
2944 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
2953 ------------------------------
2954 Index Scan using t1_i1 on t1
2955 Index Cond: (c1 >= 1)
2959 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
2961 ---------------------------------
2962 Bitmap Heap Scan on t1
2963 Recheck Cond: (c3 < 10)
2964 -> Bitmap Index Scan on t1_i
2965 Index Cond: (c3 < 10)
2969 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
2978 ---------------------------------
2979 Bitmap Heap Scan on t1
2980 Recheck Cond: (c3 < 10)
2981 -> Bitmap Index Scan on t1_i
2982 Index Cond: (c3 < 10)
2986 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
2988 ------------------------------
2989 Index Scan using t1_i1 on t1
2990 Index Cond: (c1 = 1)
2994 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3003 ----------------------------------
3004 Bitmap Heap Scan on t1
3005 Recheck Cond: (c1 = 1)
3006 -> Bitmap Index Scan on t1_i1
3007 Index Cond: (c1 = 1)
3011 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3013 -----------------------------------
3015 TID Cond: (ctid = '(1,1)'::tid)
3020 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3029 -----------------------------------
3031 TID Cond: (ctid = '(1,1)'::tid)
3036 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3038 -------------------------------------------------------------
3039 Index Scan using t1_i1 on t1
3040 Index Cond: (c1 = 1)
3041 Filter: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3045 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid IN ('(1,1)', '(2,2)', '(3,3)');
3054 ---------------------------------------------------------------
3056 TID Cond: (ctid = ANY ('{"(1,1)","(2,2)","(3,3)"}'::tid[]))
3061 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3063 ---------------------
3069 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3078 ------------------------------
3079 Index Scan using t1_i1 on t1
3080 Index Cond: (c1 >= 1)
3084 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3086 ------------------------------
3087 Index Scan using t1_i1 on t1
3088 Index Cond: (c1 = 1)
3092 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3101 ------------------------------
3102 Index Scan using t1_i1 on t1
3103 Index Cond: (c1 = 1)
3107 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3109 ------------------------------
3110 Index Scan using t1_i1 on t1
3111 Index Cond: (c1 = 1)
3114 /*+NoIndexScan(t1)*/
3115 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3124 ----------------------------------
3125 Bitmap Heap Scan on t1
3126 Recheck Cond: (c1 = 1)
3127 -> Bitmap Index Scan on t1_i1
3128 Index Cond: (c1 = 1)
3132 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3134 ---------------------
3139 /*+NoIndexScan(t1)*/
3140 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 >= 1;
3149 ---------------------
3155 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3157 ---------------------------------
3158 Bitmap Heap Scan on t1
3159 Recheck Cond: (c3 < 10)
3160 -> Bitmap Index Scan on t1_i
3161 Index Cond: (c3 < 10)
3164 /*+NoBitmapScan(t1)*/
3165 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c3 < 10;
3174 ---------------------
3180 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3182 ------------------------------
3183 Index Scan using t1_i1 on t1
3184 Index Cond: (c1 = 1)
3187 /*+NoBitmapScan(t1)*/
3188 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3197 ------------------------------
3198 Index Scan using t1_i1 on t1
3199 Index Cond: (c1 = 1)
3203 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3205 -----------------------------------
3207 TID Cond: (ctid = '(1,1)'::tid)
3212 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1 AND t1.ctid = '(1,1)';
3221 ---------------------------------
3222 Index Scan using t1_i1 on t1
3223 Index Cond: (c1 = 1)
3224 Filter: (ctid = '(1,1)'::tid)
3228 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3230 ------------------------------
3231 Index Scan using t1_i1 on t1
3232 Index Cond: (c1 = 1)
3236 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE t1.c1 = 1;
3245 ------------------------------
3246 Index Scan using t1_i1 on t1
3247 Index Cond: (c1 = 1)
3251 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3253 ------------------------------
3254 Index Scan using t1_i1 on t1
3255 Index Cond: (c1 = 1)
3258 /*+IndexOnlyScan(t1)*/
3259 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3260 INFO: hint syntax error at or near "IndexOnlyScan(t1)"
3261 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3263 ------------------------------
3264 Index Scan using t1_i1 on t1
3265 Index Cond: (c1 = 1)
3269 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3271 ---------------------
3276 /*+IndexOnlyScan(t1)*/
3277 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3278 INFO: hint syntax error at or near "IndexOnlyScan(t1)"
3279 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3281 ---------------------
3287 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3289 ------------------------------
3290 Index Scan using t1_i1 on t1
3291 Index Cond: (c1 = 1)
3294 /*+NoIndexOnlyScan(t1)*/
3295 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 = 1;
3296 INFO: hint syntax error at or near "NoIndexOnlyScan(t1)"
3297 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
3299 ------------------------------
3300 Index Scan using t1_i1 on t1
3301 Index Cond: (c1 = 1)
3305 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3307 ---------------------
3312 /*+NoIndexOnlyScan(t1)*/
3313 EXPLAIN (COSTS false) SELECT c1 FROM s1.t1 WHERE t1.c1 >= 1;
3314 INFO: hint syntax error at or near "NoIndexOnlyScan(t1)"
3315 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
3317 ---------------------
3323 ---- No. S-3-3 index name specified
3325 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3327 -----------------------------------
3329 TID Cond: (ctid = '(1,1)'::tid)
3333 SET enable_tidscan TO off;
3334 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3336 ---------------------------------
3337 Index Scan using ti1_i2 on ti1
3338 Index Cond: (c2 = 1)
3339 Filter: (ctid = '(1,1)'::tid)
3342 SET enable_indexscan TO off;
3343 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3345 -----------------------------------
3346 Bitmap Heap Scan on ti1
3347 Recheck Cond: (c2 = 1)
3348 Filter: (ctid = '(1,1)'::tid)
3349 -> Bitmap Index Scan on ti1_i2
3350 Index Cond: (c2 = 1)
3353 RESET enable_tidscan;
3354 RESET enable_indexscan;
3355 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3357 ---------------------
3363 /*+IndexScan(ti1 ti1_i3)*/
3364 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3367 IndexScan(ti1 ti1_i3)
3373 ---------------------------------
3374 Index Scan using ti1_i3 on ti1
3375 Index Cond: (c2 = 1)
3376 Filter: (ctid = '(1,1)'::tid)
3380 /*+IndexScan(ti1 ti1_i3 ti1_i2)*/
3381 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3384 IndexScan(ti1 ti1_i3 ti1_i2)
3390 ---------------------------------
3391 Index Scan using ti1_i2 on ti1
3392 Index Cond: (c2 = 1)
3393 Filter: (ctid = '(1,1)'::tid)
3397 /*+IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3398 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3401 IndexScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3407 ---------------------------------
3408 Index Scan using ti1_i2 on ti1
3409 Index Cond: (c2 = 1)
3410 Filter: (ctid = '(1,1)'::tid)
3414 /*+BitmapScan(ti1 ti1_i3)*/
3415 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3418 BitmapScan(ti1 ti1_i3)
3424 -----------------------------------
3425 Bitmap Heap Scan on ti1
3426 Recheck Cond: (c2 = 1)
3427 Filter: (ctid = '(1,1)'::tid)
3428 -> Bitmap Index Scan on ti1_i3
3429 Index Cond: (c2 = 1)
3433 /*+BitmapScan(ti1 ti1_i3 ti1_i2)*/
3434 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3437 BitmapScan(ti1 ti1_i3 ti1_i2)
3443 -----------------------------------
3444 Bitmap Heap Scan on ti1
3445 Recheck Cond: (c2 = 1)
3446 Filter: (ctid = '(1,1)'::tid)
3447 -> Bitmap Index Scan on ti1_i2
3448 Index Cond: (c2 = 1)
3452 /*+BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3453 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE ti1.c2 = 1 AND ctid = '(1,1)';
3456 BitmapScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)
3462 -----------------------------------
3463 Bitmap Heap Scan on ti1
3464 Recheck Cond: (c2 = 1)
3465 Filter: (ctid = '(1,1)'::tid)
3466 -> Bitmap Index Scan on ti1_i2
3467 Index Cond: (c2 = 1)
3471 /*+IndexOnlyScan(ti1 ti1_i3)*/
3472 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3473 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i3)"
3474 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3476 ---------------------
3482 /*+IndexOnlyScan(ti1 ti1_i3 ti1_i2)*/
3483 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3484 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i3 ti1_i2)"
3485 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3487 ---------------------
3493 /*+IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)*/
3494 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE ti1.c2 >= 1;
3495 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_i4 ti1_i3 ti1_i2 ti1_i1)"
3496 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3498 ---------------------
3504 ---- No. S-3-4 index type
3508 Column | Type | Modifiers
3509 --------+---------+-----------
3510 c1 | integer | not null
3515 "ti1_pkey" PRIMARY KEY, btree (c1)
3516 "ti1_c2_key" UNIQUE CONSTRAINT, btree (c2)
3517 "ti1_uniq" UNIQUE, btree (c1)
3518 "ti1_btree" btree (c1)
3519 "ti1_expr" btree ((c1 < 100))
3521 "ti1_gist" gist (c1)
3522 "ti1_hash" hash (c1)
3524 "ti1_i2" btree (c2, c4)
3525 "ti1_i3" btree (c2, c4, c4)
3526 "ti1_i4" btree (c2, c4, c4, c4)
3527 "ti1_multi" btree (c1, c2, c3, c4)
3528 "ti1_pred" btree (lower(c4))
3529 "ti1_ts" gin (to_tsvector('english'::regconfig, c4))
3531 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3533 -----------------------------------------------------------------------------------------------------------------------------------------
3535 TID Cond: (ctid = '(1,1)'::tid)
3536 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3540 /*+IndexScan(ti1 ti1_btree)*/
3541 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3544 IndexScan(ti1 ti1_btree)
3550 ----------------------------------------------------------------------------------------------------------------------------------------------------
3551 Index Scan using ti1_btree on ti1
3552 Index Cond: (c1 < 100)
3553 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3557 /*+IndexScan(ti1 ti1_hash)*/
3558 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3561 IndexScan(ti1 ti1_hash)
3567 ----------------------------------------------------------------------------------------------------------------------------------------------------
3568 Index Scan using ti1_hash on ti1
3569 Index Cond: (c1 = 100)
3570 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3574 /*+IndexScan(ti1 ti1_gist)*/
3575 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3578 IndexScan(ti1 ti1_gist)
3584 ----------------------------------------------------------------------------------------------------------------------------------------------------
3585 Index Scan using ti1_gist on ti1
3586 Index Cond: (c1 < 100)
3587 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3591 /*+IndexScan(ti1 ti1_gin)*/
3592 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3595 IndexScan(ti1 ti1_gin)
3601 -----------------------------------------------------------------------------------------------------------------------------------------
3603 TID Cond: (ctid = '(1,1)'::tid)
3604 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3608 /*+IndexScan(ti1 ti1_expr)*/
3609 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3612 IndexScan(ti1 ti1_expr)
3618 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3619 Index Scan using ti1_expr on ti1
3620 Index Cond: ((c1 < 100) = true)
3621 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3625 /*+IndexScan(ti1 ti1_pred)*/
3626 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3629 IndexScan(ti1 ti1_pred)
3635 ---------------------------------------------------------------------------------------------------------------------------------------
3636 Index Scan using ti1_pred on ti1
3637 Index Cond: (lower(c4) = '1'::text)
3638 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3642 /*+IndexScan(ti1 ti1_uniq)*/
3643 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3646 IndexScan(ti1 ti1_uniq)
3652 ----------------------------------------------------------------------------------------------------------------------------------------------------
3653 Index Scan using ti1_uniq on ti1
3654 Index Cond: (c1 < 100)
3655 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3659 /*+IndexScan(ti1 ti1_multi)*/
3660 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3663 IndexScan(ti1 ti1_multi)
3669 ---------------------------------------------------------------------------------------------------------------------------------------
3670 Index Scan using ti1_multi on ti1
3671 Index Cond: ((c1 < 100) AND (c2 = 1))
3672 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3676 /*+IndexScan(ti1 ti1_ts)*/
3677 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3680 IndexScan(ti1 ti1_ts)
3686 -----------------------------------------------------------------------------------------------------------------------------------------
3688 TID Cond: (ctid = '(1,1)'::tid)
3689 Filter: ((c1 < 100) AND (c2 = 1) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3693 /*+IndexScan(ti1 ti1_pkey)*/
3694 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3697 IndexScan(ti1 ti1_pkey)
3703 ----------------------------------------------------------------------------------------------------------------------------------------------------
3704 Index Scan using ti1_pkey on ti1
3705 Index Cond: (c1 < 100)
3706 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3710 /*+IndexScan(ti1 ti1_c2_key)*/
3711 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3714 IndexScan(ti1 ti1_c2_key)
3720 ------------------------------------------------------------------------------------------------------------------------------------------------------
3721 Index Scan using ti1_c2_key on ti1
3722 Index Cond: (c2 = 1)
3723 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3727 /*+BitmapScan(ti1 ti1_btree)*/
3728 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3731 BitmapScan(ti1 ti1_btree)
3737 ----------------------------------------------------------------------------------------------------------------------------------------------------
3738 Bitmap Heap Scan on ti1
3739 Recheck Cond: (c1 < 100)
3740 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3741 -> Bitmap Index Scan on ti1_btree
3742 Index Cond: (c1 < 100)
3746 /*+BitmapScan(ti1 ti1_hash)*/
3747 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3750 BitmapScan(ti1 ti1_hash)
3756 ----------------------------------------------------------------------------------------------------------------------------------------------------
3757 Bitmap Heap Scan on ti1
3758 Recheck Cond: (c1 = 100)
3759 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3760 -> Bitmap Index Scan on ti1_hash
3761 Index Cond: (c1 = 100)
3765 /*+BitmapScan(ti1 ti1_gist)*/
3766 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3769 BitmapScan(ti1 ti1_gist)
3775 ----------------------------------------------------------------------------------------------------------------------------------------------------
3776 Bitmap Heap Scan on ti1
3777 Recheck Cond: (c1 < 100)
3778 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3779 -> Bitmap Index Scan on ti1_gist
3780 Index Cond: (c1 < 100)
3784 /*+BitmapScan(ti1 ti1_gin)*/
3785 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3788 BitmapScan(ti1 ti1_gin)
3794 ----------------------------------------------------------------------------------------------------------------------------------------------------
3795 Bitmap Heap Scan on ti1
3796 Recheck Cond: (c1 < 100)
3797 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3798 -> Bitmap Index Scan on ti1_gin
3799 Index Cond: (c1 < 100)
3803 /*+BitmapScan(ti1 ti1_expr)*/
3804 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3807 BitmapScan(ti1 ti1_expr)
3813 -------------------------------------------------------------------------------------------------------------------------------------------------------------------
3814 Bitmap Heap Scan on ti1
3815 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3816 -> Bitmap Index Scan on ti1_expr
3817 Index Cond: ((c1 < 100) = true)
3821 /*+BitmapScan(ti1 ti1_pred)*/
3822 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3825 BitmapScan(ti1 ti1_pred)
3831 ---------------------------------------------------------------------------------------------------------------------------------------
3832 Bitmap Heap Scan on ti1
3833 Recheck Cond: (lower(c4) = '1'::text)
3834 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery))
3835 -> Bitmap Index Scan on ti1_pred
3836 Index Cond: (lower(c4) = '1'::text)
3840 /*+BitmapScan(ti1 ti1_uniq)*/
3841 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3844 BitmapScan(ti1 ti1_uniq)
3850 ----------------------------------------------------------------------------------------------------------------------------------------------------
3851 Bitmap Heap Scan on ti1
3852 Recheck Cond: (c1 < 100)
3853 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3854 -> Bitmap Index Scan on ti1_uniq
3855 Index Cond: (c1 < 100)
3859 /*+BitmapScan(ti1 ti1_multi)*/
3860 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3863 BitmapScan(ti1 ti1_multi)
3869 ---------------------------------------------------------------------------------------------------------------------------------------
3870 Bitmap Heap Scan on ti1
3871 Recheck Cond: ((c1 < 100) AND (c2 = 1))
3872 Filter: ((ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3873 -> Bitmap Index Scan on ti1_multi
3874 Index Cond: ((c1 < 100) AND (c2 = 1))
3878 /*+BitmapScan(ti1 ti1_ts)*/
3879 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3882 BitmapScan(ti1 ti1_ts)
3888 -------------------------------------------------------------------------------------------
3889 Bitmap Heap Scan on ti1
3890 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
3891 Filter: ((c1 < 100) AND (c2 = 1) AND (ctid = '(1,1)'::tid) AND (lower(c4) = '1'::text))
3892 -> Bitmap Index Scan on ti1_ts
3893 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
3897 /*+BitmapScan(ti1 ti1_pkey)*/
3898 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3901 BitmapScan(ti1 ti1_pkey)
3907 ----------------------------------------------------------------------------------------------------------------------------------------------------
3908 Bitmap Heap Scan on ti1
3909 Recheck Cond: (c1 < 100)
3910 Filter: ((c2 = 1) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3911 -> Bitmap Index Scan on ti1_pkey
3912 Index Cond: (c1 < 100)
3916 /*+BitmapScan(ti1 ti1_c2_key)*/
3917 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 < 100 AND c2 = 1 AND lower(c4) = '1' AND to_tsvector('english', c4) @@ 'a & b' AND ctid = '(1,1)';
3920 BitmapScan(ti1 ti1_c2_key)
3926 ------------------------------------------------------------------------------------------------------------------------------------------------------
3927 Bitmap Heap Scan on ti1
3928 Recheck Cond: (c2 = 1)
3929 Filter: ((c1 < 100) AND (ctid = '(1,1)'::tid) AND (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery) AND (lower(c4) = '1'::text))
3930 -> Bitmap Index Scan on ti1_c2_key
3931 Index Cond: (c2 = 1)
3935 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
3937 ---------------------
3942 /*+IndexOnlyScan(ti1 ti1_btree)*/
3943 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
3944 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_btree)"
3945 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3947 ---------------------
3953 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
3955 ----------------------------------
3956 Index Scan using ti1_uniq on ti1
3957 Index Cond: (c1 = 1)
3960 /*+IndexOnlyScan(ti1 ti1_hash)*/
3961 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
3962 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_hash)"
3963 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3965 ----------------------------------
3966 Index Scan using ti1_uniq on ti1
3967 Index Cond: (c1 = 1)
3971 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
3973 ----------------------------------
3974 Index Scan using ti1_uniq on ti1
3975 Index Cond: (c1 < 1)
3978 /*+IndexOnlyScan(ti1 ti1_gist)*/
3979 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 1;
3980 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_gist)"
3981 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
3983 ----------------------------------
3984 Index Scan using ti1_uniq on ti1
3985 Index Cond: (c1 < 1)
3989 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
3991 ----------------------------------
3992 Index Scan using ti1_uniq on ti1
3993 Index Cond: (c1 = 1)
3996 /*+IndexOnlyScan(ti1 ti1_gin)*/
3997 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
3998 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_gin)"
3999 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4001 ----------------------------------
4002 Index Scan using ti1_uniq on ti1
4003 Index Cond: (c1 = 1)
4007 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4009 ----------------------------------
4010 Index Scan using ti1_uniq on ti1
4011 Index Cond: (c1 < 100)
4014 /*+IndexOnlyScan(ti1 ti1_expr)*/
4015 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 < 100;
4016 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_expr)"
4017 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4019 ----------------------------------
4020 Index Scan using ti1_uniq on ti1
4021 Index Cond: (c1 < 100)
4025 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4027 ------------------------------------
4029 Filter: (lower(c4) >= '1'::text)
4032 /*+IndexOnlyScan(ti1 ti1_pred)*/
4033 EXPLAIN (COSTS false) SELECT c4 FROM s1.ti1 WHERE lower(c4) >= '1';
4034 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pred)"
4035 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4037 ------------------------------------
4039 Filter: (lower(c4) >= '1'::text)
4043 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4045 ---------------------
4050 /*+IndexOnlyScan(ti1 ti1_uniq)*/
4051 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4052 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_uniq)"
4053 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4055 ---------------------
4061 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4063 ---------------------
4068 /*+IndexOnlyScan(ti1 ti1_multi)*/
4069 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4070 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_multi)"
4071 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4073 ---------------------
4079 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4081 -----------------------------------------------------------------------------------------
4082 Bitmap Heap Scan on ti1
4083 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4084 -> Bitmap Index Scan on ti1_ts
4085 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4088 /*+IndexOnlyScan(ti1 ti1_ts)*/
4089 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE to_tsvector('english', c4) @@ 'a & b';
4090 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_ts)"
4091 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4093 -----------------------------------------------------------------------------------------
4094 Bitmap Heap Scan on ti1
4095 Recheck Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4096 -> Bitmap Index Scan on ti1_ts
4097 Index Cond: (to_tsvector('english'::regconfig, c4) @@ '''a'' & ''b'''::tsquery)
4101 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4103 ---------------------
4108 /*+IndexOnlyScan(ti1 ti1_pkey)*/
4109 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
4110 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey)"
4111 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4113 ---------------------
4119 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4121 ---------------------
4126 /*+IndexOnlyScan(ti1 ti1_c2_key)*/
4127 EXPLAIN (COSTS false) SELECT c2 FROM s1.ti1 WHERE c2 >= 1;
4128 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_c2_key)"
4129 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4131 ---------------------
4137 ---- No. S-3-5 not used index
4140 /*+IndexScan(ti1 ti1_pred)*/
4141 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4144 IndexScan(ti1 ti1_pred)
4150 ------------------------------------------------------------------------
4151 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4156 /*+BitmapScan(ti1 ti1_pred)*/
4157 EXPLAIN (COSTS true) SELECT * FROM s1.ti1 WHERE c1 = 100;
4160 BitmapScan(ti1 ti1_pred)
4166 ------------------------------------------------------------------------
4167 Seq Scan on ti1 (cost=10000000000.00..10000000018.50 rows=1 width=15)
4172 /*+IndexOnlyScan(ti1 ti1_pred)*/
4173 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4174 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pred)"
4175 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4177 --------------------------------------------------------------------
4178 Index Scan using ti1_uniq on ti1 (cost=0.00..8.27 rows=1 width=4)
4179 Index Cond: (c1 = 100)
4183 ---- No. S-3-6 not exist index
4186 /*+IndexScan(ti1 not_exist)*/
4187 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 100;
4190 IndexScan(ti1 not_exist)
4196 ----------------------
4202 /*+BitmapScan(ti1 not_exist)*/
4203 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 100;
4206 BitmapScan(ti1 not_exist)
4212 ----------------------
4218 /*+IndexOnlyScan(ti1 not_exist)*/
4219 EXPLAIN (COSTS true) SELECT c1 FROM s1.ti1 WHERE c1 = 100;
4220 INFO: hint syntax error at or near "IndexOnlyScan(ti1 not_exist)"
4221 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
4223 --------------------------------------------------------------------
4224 Index Scan using ti1_uniq on ti1 (cost=0.00..8.27 rows=1 width=4)
4225 Index Cond: (c1 = 100)
4229 ---- No. S-3-7 query structure
4231 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4233 -----------------------------------------------
4235 Hash Cond: (t2.c1 = t1.c1)
4239 TID Cond: (ctid = '(1,1)'::tid)
4244 EXPLAIN (COSTS false) SELECT * FROM s1.t1 WHERE c1 = 100;
4253 ----------------------
4259 /*+SeqScan(t1)BitmapScan(t2)*/
4260 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4270 ----------------------------------------
4273 Filter: (ctid = '(1,1)'::tid)
4274 -> Bitmap Heap Scan on t2
4275 Recheck Cond: (c1 = t1.c1)
4276 -> Bitmap Index Scan on t2_i1
4277 Index Cond: (c1 = t1.c1)
4282 EXPLAIN (COSTS false) SELECT * FROM s1.t1, s1.t2 WHERE t1.c1 = t2.c1 AND t1.ctid = '(1,1)';
4291 ---------------------------------------------
4293 Hash Cond: (t2.c1 = t1.c1)
4297 Filter: (ctid = '(1,1)'::tid)
4301 ---- No. S-3-8 query structure
4304 EXPLAIN (COSTS false)
4306 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4307 SELECT max(b3t1.c1), (
4308 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4309 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4310 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4312 ---------------------------------------------------------------------
4314 InitPlan 2 (returns $1)
4316 InitPlan 1 (returns $0)
4318 -> Index Scan using t1_i1 on t1 b2t1
4319 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4320 InitPlan 4 (returns $3)
4322 InitPlan 3 (returns $2)
4324 -> Index Scan using t1_i1 on t1 b4t1
4325 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4326 InitPlan 5 (returns $4)
4328 -> Index Scan using t1_i1 on t1 b3t1
4329 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4332 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4334 EXPLAIN (COSTS false)
4336 SELECT max(b1t1.c1) FROM s1.t1 b1t1 WHERE b1t1.c1 = 1)
4337 SELECT max(b3t1.c1), (
4338 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4339 ) FROM s1.t1 b3t1 WHERE b3t1.c1 = (
4340 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4343 IndexScan(b2t1 t1_pkey)
4344 BitmapScan(b3t1 t1_pkey)
4352 ---------------------------------------------------------------------
4354 InitPlan 2 (returns $1)
4356 InitPlan 1 (returns $0)
4358 -> Index Scan using t1_pkey on t1 b2t1
4359 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4360 InitPlan 4 (returns $3)
4362 InitPlan 3 (returns $2)
4364 -> Seq Scan on t1 b4t1
4365 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4366 InitPlan 5 (returns $4)
4368 -> Bitmap Heap Scan on t1 b3t1
4369 Recheck Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4370 -> Bitmap Index Scan on t1_pkey
4371 Index Cond: ((c1 IS NOT NULL) AND (c1 = $3))
4375 EXPLAIN (COSTS false)
4377 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4378 SELECT max(b3t1.c1), (
4379 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4380 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4381 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4383 -------------------------------------------------------
4388 -> Index Scan using t1_i1 on t1 b1t1
4389 Index Cond: (c1 = 1)
4390 -> Seq Scan on t2 b1t2
4392 InitPlan 2 (returns $1)
4395 -> Index Scan using t1_i1 on t1 b2t1
4396 Index Cond: (c1 = 1)
4397 -> Seq Scan on t2 b2t2
4399 InitPlan 3 (returns $2)
4402 -> Index Scan using t1_i1 on t1 b4t1
4403 Index Cond: (c1 = 1)
4404 -> Seq Scan on t2 b4t2
4408 -> Index Scan using t1_i1 on t1 b3t1
4409 Index Cond: (c1 = $2)
4410 -> Seq Scan on t2 b3t2
4416 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4417 TidScan(b1t2)SeqScan(b2t2)IndexScan(b3t2 t2_pkey)BitmapScan(b4t2 t2_pkey)
4419 EXPLAIN (COSTS false)
4421 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4422 SELECT max(b3t1.c1), (
4423 SELECT max(b2t1.c1) FROM s1.t1 b2t1 JOIN s1.t2 b2t2 ON(b2t1.c1 = b2t2.c1) WHERE b2t1.c1 = 1
4424 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4425 SELECT max(b4t1.c1) FROM s1.t1 b4t1 JOIN s1.t2 b4t2 ON(b4t1.c1 = b4t2.c1) WHERE b4t1.c1 = 1);
4430 IndexScan(b2t1 t1_pkey)
4432 BitmapScan(b3t1 t1_pkey)
4433 IndexScan(b3t2 t2_pkey)
4435 BitmapScan(b4t2 t2_pkey)
4441 ---------------------------------------------------------
4446 -> Seq Scan on t1 b1t1
4448 -> Seq Scan on t2 b1t2
4450 InitPlan 2 (returns $1)
4453 -> Index Scan using t1_pkey on t1 b2t1
4454 Index Cond: (c1 = 1)
4455 -> Seq Scan on t2 b2t2
4457 InitPlan 3 (returns $2)
4460 -> Seq Scan on t1 b4t1
4462 -> Bitmap Heap Scan on t2 b4t2
4463 Recheck Cond: (c1 = 1)
4464 -> Bitmap Index Scan on t2_pkey
4465 Index Cond: (c1 = 1)
4468 -> Bitmap Heap Scan on t1 b3t1
4469 Recheck Cond: (c1 = $2)
4470 -> Bitmap Index Scan on t1_pkey
4471 Index Cond: (c1 = $2)
4474 -> Index Scan using t2_pkey on t2 b3t2
4475 Index Cond: (c1 = $2)
4479 EXPLAIN (COSTS false)
4481 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4482 SELECT max(b3t1.c1), (
4483 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4484 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4485 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4487 ---------------------------------------------------------------------
4492 -> Index Scan using t1_i1 on t1 b1t1
4493 Index Cond: (c1 = 1)
4494 -> Seq Scan on t2 b1t2
4496 InitPlan 3 (returns $2)
4498 InitPlan 2 (returns $1)
4500 -> Index Scan using t1_i1 on t1 b2t1
4501 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4502 InitPlan 5 (returns $4)
4504 InitPlan 4 (returns $3)
4506 -> Index Scan using t1_i1 on t1 b4t1
4507 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4510 -> Index Scan using t1_i1 on t1 b3t1
4511 Index Cond: (c1 = $4)
4512 -> Seq Scan on t2 b3t2
4518 /*+SeqScan(b1t1)IndexScan(b2t1 t1_pkey)BitmapScan(b3t1 t1_pkey)TidScan(b4t1)
4519 TidScan(b1t2)IndexScan(b3t2 t2_pkey)
4521 EXPLAIN (COSTS false)
4523 SELECT max(b1t1.c1) FROM s1.t1 b1t1 JOIN s1.t2 b1t2 ON(b1t1.c1 = b1t2.c1) WHERE b1t1.c1 = 1)
4524 SELECT max(b3t1.c1), (
4525 SELECT max(b2t1.c1) FROM s1.t1 b2t1 WHERE b2t1.c1 = 1
4526 ) FROM s1.t1 b3t1 JOIN s1.t2 b3t2 ON(b3t1.c1 = b3t2.c1) JOIN cte1 ON(b3t1.c1 = cte1.c1) WHERE b3t1.c1 = (
4527 SELECT max(b4t1.c1) FROM s1.t1 b4t1 WHERE b4t1.c1 = 1);
4532 IndexScan(b2t1 t1_pkey)
4533 BitmapScan(b3t1 t1_pkey)
4534 IndexScan(b3t2 t2_pkey)
4541 ---------------------------------------------------------------------
4546 -> Seq Scan on t1 b1t1
4548 -> Seq Scan on t2 b1t2
4550 InitPlan 3 (returns $2)
4552 InitPlan 2 (returns $1)
4554 -> Index Scan using t1_pkey on t1 b2t1
4555 Index Cond: ((c1 IS NOT NULL) AND (c1 = 1))
4556 InitPlan 5 (returns $4)
4558 InitPlan 4 (returns $3)
4560 -> Seq Scan on t1 b4t1
4561 Filter: ((c1 IS NOT NULL) AND (c1 = 1))
4564 -> Bitmap Heap Scan on t1 b3t1
4565 Recheck Cond: (c1 = $4)
4566 -> Bitmap Index Scan on t1_pkey
4567 Index Cond: (c1 = $4)
4570 -> Index Scan using t2_pkey on t2 b3t2
4571 Index Cond: (c1 = $4)
4575 ---- No. S-3-9 inheritance table select type
4578 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4580 --------------------
4586 EXPLAIN (COSTS false) SELECT * FROM ONLY s1.p1 WHERE c1 = 1;
4595 -----------------------------
4596 Index Scan using p1_i on p1
4597 Index Cond: (c1 = 1)
4601 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4603 ---------------------------------
4608 -> Seq Scan on p1c1 p1
4613 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4622 ------------------------------------------------
4625 -> Index Scan using p1_i on p1
4626 Index Cond: (c1 = 1)
4627 -> Index Scan using p1c1_i on p1c1 p1
4628 Index Cond: (c1 = 1)
4632 ---- No. S-3-10 inheritance table number
4635 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4637 ---------------------------------
4642 -> Seq Scan on p1c1 p1
4647 EXPLAIN (COSTS false) SELECT * FROM s1.p1 WHERE c1 = 1;
4656 ------------------------------------------------
4659 -> Index Scan using p1_i on p1
4660 Index Cond: (c1 = 1)
4661 -> Index Scan using p1c1_i on p1c1 p1
4662 Index Cond: (c1 = 1)
4666 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4668 -----------------------------------
4673 -> Seq Scan on p2c1 p2
4675 -> Seq Scan on p2c1c1 p2
4680 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4689 ----------------------------------------------------
4692 -> Index Scan using p2_i on p2
4693 Index Cond: (c1 = 1)
4694 -> Index Scan using p2c1_i on p2c1 p2
4695 Index Cond: (c1 = 1)
4696 -> Index Scan using p2c1c1_i on p2c1c1 p2
4697 Index Cond: (c1 = 1)
4701 ---- No. S-3-11 inheritance table specified table
4703 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4705 -----------------------------------
4710 -> Seq Scan on p2c1 p2
4712 -> Seq Scan on p2c1c1 p2
4718 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4727 ----------------------------------------------------
4730 -> Index Scan using p2_i on p2
4731 Index Cond: (c1 = 1)
4732 -> Index Scan using p2c1_i on p2c1 p2
4733 Index Cond: (c1 = 1)
4734 -> Index Scan using p2c1c1_i on p2c1c1 p2
4735 Index Cond: (c1 = 1)
4739 /*+IndexScan(p2c1)*/
4740 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4749 -----------------------------------
4754 -> Seq Scan on p2c1 p2
4756 -> Seq Scan on p2c1c1 p2
4761 /*+IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)*/
4762 EXPLAIN (COSTS false) SELECT * FROM s1.p2 WHERE c1 = 1;
4765 IndexScan(p2 p2_pkey p2c1_pkey p2c1c1_pkey)
4771 -------------------------------------------------------
4774 -> Index Scan using p2_pkey on p2
4775 Index Cond: (c1 = 1)
4776 -> Index Scan using p2c1_pkey on p2c1 p2
4777 Index Cond: (c1 = 1)
4778 -> Index Scan using p2c1c1_pkey on p2c1c1 p2
4779 Index Cond: (c1 = 1)
4783 /*+IndexScan(p2 p2c1_pkey)*/
4784 EXPLAIN (COSTS true) SELECT * FROM s1.p2 WHERE c1 = 1;
4787 IndexScan(p2 p2c1_pkey)
4793 ------------------------------------------------------------------------------------------
4794 Result (cost=10000000000.00..20000000009.89 rows=3 width=34)
4795 -> Append (cost=10000000000.00..20000000009.89 rows=3 width=34)
4796 -> Seq Scan on p2 (cost=10000000000.00..10000000000.00 rows=1 width=44)
4798 -> Index Scan using p2c1_pkey on p2c1 p2 (cost=0.00..8.27 rows=1 width=44)
4799 Index Cond: (c1 = 1)
4800 -> Seq Scan on p2c1c1 p2 (cost=10000000000.00..10000000001.62 rows=1 width=14)
4805 ---- No. S-3-12 specified same table
4808 /*+IndexScan(ti1) BitmapScan(ti1)*/
4809 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4810 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
4811 DETAIL: Conflict scan method hint.
4821 -------------------------------------
4822 Bitmap Heap Scan on ti1
4823 Recheck Cond: (c1 = 1)
4824 Filter: (ctid = '(1,1)'::tid)
4825 -> Bitmap Index Scan on ti1_uniq
4826 Index Cond: (c1 = 1)
4830 /*+IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
4831 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4832 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
4833 DETAIL: Conflict scan method hint.
4836 BitmapScan(ti1 ti1_btree)
4839 IndexScan(ti1 ti1_pkey)
4843 --------------------------------------
4844 Bitmap Heap Scan on ti1
4845 Recheck Cond: (c1 = 1)
4846 Filter: (ctid = '(1,1)'::tid)
4847 -> Bitmap Index Scan on ti1_btree
4848 Index Cond: (c1 = 1)
4852 /*+BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)*/
4853 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4854 INFO: hint syntax error at or near "BitmapScan(ti1) IndexScan(ti1) BitmapScan(ti1)"
4855 DETAIL: Conflict scan method hint.
4856 INFO: hint syntax error at or near "IndexScan(ti1) BitmapScan(ti1)"
4857 DETAIL: Conflict scan method hint.
4868 -------------------------------------
4869 Bitmap Heap Scan on ti1
4870 Recheck Cond: (c1 = 1)
4871 Filter: (ctid = '(1,1)'::tid)
4872 -> Bitmap Index Scan on ti1_uniq
4873 Index Cond: (c1 = 1)
4877 /*+BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)*/
4878 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4879 INFO: hint syntax error at or near "BitmapScan(ti1 ti1_hash) IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
4880 DETAIL: Conflict scan method hint.
4881 INFO: hint syntax error at or near "IndexScan(ti1 ti1_pkey) BitmapScan(ti1 ti1_btree)"
4882 DETAIL: Conflict scan method hint.
4885 BitmapScan(ti1 ti1_btree)
4888 BitmapScan(ti1 ti1_hash)
4889 IndexScan(ti1 ti1_pkey)
4893 --------------------------------------
4894 Bitmap Heap Scan on ti1
4895 Recheck Cond: (c1 = 1)
4896 Filter: (ctid = '(1,1)'::tid)
4897 -> Bitmap Index Scan on ti1_btree
4898 Index Cond: (c1 = 1)
4902 ---- No. S-3-13 message output
4906 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4915 ------------------------------------------------
4917 Filter: ((c1 = 1) AND (ctid = '(1,1)'::tid))
4921 /*+SeqScan(ti1 ti1_pkey)*/
4922 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4923 INFO: hint syntax error at or near "ti1_pkey)"
4924 DETAIL: Closing parenthesis is necessary.
4926 -----------------------------------
4928 TID Cond: (ctid = '(1,1)'::tid)
4933 /*+SeqScan(ti1 ti1_pkey ti1_btree)*/
4934 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4935 INFO: hint syntax error at or near "ti1_pkey ti1_btree)"
4936 DETAIL: Closing parenthesis is necessary.
4938 -----------------------------------
4940 TID Cond: (ctid = '(1,1)'::tid)
4946 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4955 ----------------------------------
4956 Index Scan using ti1_uniq on ti1
4957 Index Cond: (c1 = 1)
4958 Filter: (ctid = '(1,1)'::tid)
4962 /*+IndexScan(ti1 ti1_pkey)*/
4963 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4966 IndexScan(ti1 ti1_pkey)
4972 ----------------------------------
4973 Index Scan using ti1_pkey on ti1
4974 Index Cond: (c1 = 1)
4975 Filter: (ctid = '(1,1)'::tid)
4979 /*+IndexScan(ti1 ti1_pkey ti1_btree)*/
4980 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
4983 IndexScan(ti1 ti1_pkey ti1_btree)
4989 -----------------------------------
4990 Index Scan using ti1_btree on ti1
4991 Index Cond: (c1 = 1)
4992 Filter: (ctid = '(1,1)'::tid)
4996 /*+BitmapScan(ti1)*/
4997 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5006 -------------------------------------
5007 Bitmap Heap Scan on ti1
5008 Recheck Cond: (c1 = 1)
5009 Filter: (ctid = '(1,1)'::tid)
5010 -> Bitmap Index Scan on ti1_uniq
5011 Index Cond: (c1 = 1)
5015 /*+BitmapScan(ti1 ti1_pkey)*/
5016 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5019 BitmapScan(ti1 ti1_pkey)
5025 -------------------------------------
5026 Bitmap Heap Scan on ti1
5027 Recheck Cond: (c1 = 1)
5028 Filter: (ctid = '(1,1)'::tid)
5029 -> Bitmap Index Scan on ti1_pkey
5030 Index Cond: (c1 = 1)
5034 /*+BitmapScan(ti1 ti1_pkey ti1_btree)*/
5035 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5038 BitmapScan(ti1 ti1_pkey ti1_btree)
5044 --------------------------------------
5045 Bitmap Heap Scan on ti1
5046 Recheck Cond: (c1 = 1)
5047 Filter: (ctid = '(1,1)'::tid)
5048 -> Bitmap Index Scan on ti1_btree
5049 Index Cond: (c1 = 1)
5054 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5063 -----------------------------------
5065 TID Cond: (ctid = '(1,1)'::tid)
5070 /*+TidScan(ti1 ti1_pkey)*/
5071 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5072 INFO: hint syntax error at or near "ti1_pkey)"
5073 DETAIL: Closing parenthesis is necessary.
5075 -----------------------------------
5077 TID Cond: (ctid = '(1,1)'::tid)
5082 /*+TidScan(ti1 ti1_pkey ti1_btree)*/
5083 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5084 INFO: hint syntax error at or near "ti1_pkey ti1_btree)"
5085 DETAIL: Closing parenthesis is necessary.
5087 -----------------------------------
5089 TID Cond: (ctid = '(1,1)'::tid)
5095 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5104 -----------------------------------
5106 TID Cond: (ctid = '(1,1)'::tid)
5111 /*+NoSeqScan(ti1 ti1_pkey)*/
5112 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5113 INFO: hint syntax error at or near "ti1_pkey)"
5114 DETAIL: Closing parenthesis is necessary.
5116 -----------------------------------
5118 TID Cond: (ctid = '(1,1)'::tid)
5123 /*+NoSeqScan(ti1 ti1_pkey ti1_btree)*/
5124 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5125 INFO: hint syntax error at or near "ti1_pkey ti1_btree)"
5126 DETAIL: Closing parenthesis is necessary.
5128 -----------------------------------
5130 TID Cond: (ctid = '(1,1)'::tid)
5135 /*+NoIndexScan(ti1)*/
5136 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5145 -----------------------------------
5147 TID Cond: (ctid = '(1,1)'::tid)
5152 /*+NoIndexScan(ti1 ti1_pkey)*/
5153 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5154 INFO: hint syntax error at or near "ti1_pkey)"
5155 DETAIL: Closing parenthesis is necessary.
5157 -----------------------------------
5159 TID Cond: (ctid = '(1,1)'::tid)
5164 /*+NoIndexScan(ti1 ti1_pkey ti1_btree)*/
5165 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5166 INFO: hint syntax error at or near "ti1_pkey ti1_btree)"
5167 DETAIL: Closing parenthesis is necessary.
5169 -----------------------------------
5171 TID Cond: (ctid = '(1,1)'::tid)
5176 /*+NoBitmapScan(ti1)*/
5177 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5186 -----------------------------------
5188 TID Cond: (ctid = '(1,1)'::tid)
5193 /*+NoBitmapScan(ti1 ti1_pkey)*/
5194 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5195 INFO: hint syntax error at or near "ti1_pkey)"
5196 DETAIL: Closing parenthesis is necessary.
5198 -----------------------------------
5200 TID Cond: (ctid = '(1,1)'::tid)
5205 /*+NoBitmapScan(ti1 ti1_pkey ti1_btree)*/
5206 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5207 INFO: hint syntax error at or near "ti1_pkey ti1_btree)"
5208 DETAIL: Closing parenthesis is necessary.
5210 -----------------------------------
5212 TID Cond: (ctid = '(1,1)'::tid)
5218 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5227 ----------------------------------
5228 Index Scan using ti1_uniq on ti1
5229 Index Cond: (c1 = 1)
5230 Filter: (ctid = '(1,1)'::tid)
5234 /*+NoTidScan(ti1 ti1_pkey)*/
5235 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5236 INFO: hint syntax error at or near "ti1_pkey)"
5237 DETAIL: Closing parenthesis is necessary.
5239 -----------------------------------
5241 TID Cond: (ctid = '(1,1)'::tid)
5246 /*+NoTidScan(ti1 ti1_pkey ti1_btree)*/
5247 EXPLAIN (COSTS false) SELECT * FROM s1.ti1 WHERE c1 = 1 AND ctid = '(1,1)';
5248 INFO: hint syntax error at or near "ti1_pkey ti1_btree)"
5249 DETAIL: Closing parenthesis is necessary.
5251 -----------------------------------
5253 TID Cond: (ctid = '(1,1)'::tid)
5258 /*+IndexOnlyScan(ti1)*/
5259 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5260 INFO: hint syntax error at or near "IndexOnlyScan(ti1)"
5261 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5263 ---------------------
5269 /*+IndexOnlyScan(ti1 ti1_pkey)*/
5270 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5271 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey)"
5272 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5274 ---------------------
5280 /*+IndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5281 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 >= 1;
5282 INFO: hint syntax error at or near "IndexOnlyScan(ti1 ti1_pkey ti1_btree)"
5283 DETAIL: Unrecognized hint keyword "IndexOnlyScan".
5285 ---------------------
5291 /*+NoIndexOnlyScan(ti1)*/
5292 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5293 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1)"
5294 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5296 ----------------------------------
5297 Index Scan using ti1_uniq on ti1
5298 Index Cond: (c1 = 1)
5302 /*+NoIndexOnlyScan(ti1 ti1_pkey)*/
5303 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5304 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1 ti1_pkey)"
5305 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5307 ----------------------------------
5308 Index Scan using ti1_uniq on ti1
5309 Index Cond: (c1 = 1)
5313 /*+NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)*/
5314 EXPLAIN (COSTS false) SELECT c1 FROM s1.ti1 WHERE c1 = 1;
5315 INFO: hint syntax error at or near "NoIndexOnlyScan(ti1 ti1_pkey ti1_btree)"
5316 DETAIL: Unrecognized hint keyword "NoIndexOnlyScan".
5318 ----------------------------------
5319 Index Scan using ti1_uniq on ti1
5320 Index Cond: (c1 = 1)