-- macaddr check
CREATE TABLE macaddrtmp (a macaddr);
\copy macaddrtmp from 'data/macaddr.data'
SET enable_seqscan=on;
SELECT count(*) FROM macaddrtmp WHERE a <  '22:00:5c:e5:9b:0d';
 count 
-------
    56
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a <= '22:00:5c:e5:9b:0d';
 count 
-------
    60
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a  = '22:00:5c:e5:9b:0d';
 count 
-------
     4
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a >= '22:00:5c:e5:9b:0d';
 count 
-------
   544
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a >  '22:00:5c:e5:9b:0d';
 count 
-------
   540
(1 row)

CREATE INDEX macaddridx ON macaddrtmp USING gist ( a );
SET enable_seqscan=off;
SELECT count(*) FROM macaddrtmp WHERE a <  '22:00:5c:e5:9b:0d'::macaddr;
 count 
-------
    56
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a <= '22:00:5c:e5:9b:0d'::macaddr;
 count 
-------
    60
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a  = '22:00:5c:e5:9b:0d'::macaddr;
 count 
-------
     4
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a >= '22:00:5c:e5:9b:0d'::macaddr;
 count 
-------
   544
(1 row)

SELECT count(*) FROM macaddrtmp WHERE a >  '22:00:5c:e5:9b:0d'::macaddr;
 count 
-------
   540
(1 row)

-- Test index-only scans
SET enable_bitmapscan=off;
EXPLAIN (COSTS OFF)
SELECT * FROM macaddrtmp WHERE a < '02:03:04:05:06:07'::macaddr;
                    QUERY PLAN                    
--------------------------------------------------
 Index Only Scan using macaddridx on macaddrtmp
   Index Cond: (a < '02:03:04:05:06:07'::macaddr)
(2 rows)

SELECT * FROM macaddrtmp WHERE a < '02:03:04:05:06:07'::macaddr;
         a         
-------------------
 01:02:37:05:4f:36
 01:02:37:05:4f:36
 01:02:37:05:4f:36
 01:02:37:05:4f:36
 01:43:b5:79:eb:0f
 01:43:b5:79:eb:0f
 01:43:b5:79:eb:0f
 01:43:b5:79:eb:0f
(8 rows)