set enable_seqscan=off; CREATE TABLE test_name ( i name ); INSERT INTO test_name VALUES ('a'),('ab'),('abc'),('abb'),('axy'),('xyz'); CREATE INDEX idx_name ON test_name USING gin (i); SELECT * FROM test_name WHERE i<'abc' ORDER BY i; i ----- a ab abb (3 rows) SELECT * FROM test_name WHERE i<='abc' ORDER BY i; i ----- a ab abb abc (4 rows) SELECT * FROM test_name WHERE i='abc' ORDER BY i; i ----- abc (1 row) SELECT * FROM test_name WHERE i>='abc' ORDER BY i; i ----- abc axy xyz (3 rows) SELECT * FROM test_name WHERE i>'abc' ORDER BY i; i ----- axy xyz (2 rows) EXPLAIN (COSTS OFF) SELECT * FROM test_name WHERE i<'abc' ORDER BY i; QUERY PLAN --------------------------------------------- Sort Sort Key: i -> Bitmap Heap Scan on test_name Recheck Cond: (i < 'abc'::name) -> Bitmap Index Scan on idx_name Index Cond: (i < 'abc'::name) (6 rows) EXPLAIN (COSTS OFF) SELECT * FROM test_name WHERE i<='abc' ORDER BY i; QUERY PLAN ---------------------------------------------- Sort Sort Key: i -> Bitmap Heap Scan on test_name Recheck Cond: (i <= 'abc'::name) -> Bitmap Index Scan on idx_name Index Cond: (i <= 'abc'::name) (6 rows) EXPLAIN (COSTS OFF) SELECT * FROM test_name WHERE i='abc' ORDER BY i; QUERY PLAN --------------------------------------- Bitmap Heap Scan on test_name Recheck Cond: (i = 'abc'::name) -> Bitmap Index Scan on idx_name Index Cond: (i = 'abc'::name) (4 rows) EXPLAIN (COSTS OFF) SELECT * FROM test_name WHERE i>='abc' ORDER BY i; QUERY PLAN ---------------------------------------------- Sort Sort Key: i -> Bitmap Heap Scan on test_name Recheck Cond: (i >= 'abc'::name) -> Bitmap Index Scan on idx_name Index Cond: (i >= 'abc'::name) (6 rows) EXPLAIN (COSTS OFF) SELECT * FROM test_name WHERE i>'abc' ORDER BY i; QUERY PLAN --------------------------------------------- Sort Sort Key: i -> Bitmap Heap Scan on test_name Recheck Cond: (i > 'abc'::name) -> Bitmap Index Scan on idx_name Index Cond: (i > 'abc'::name) (6 rows)