mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-31 10:30:33 +03:00 
			
		
		
		
	source data, improve split algorithm for intbig_ops. Oleg Bartunov with some kibitzing from Tom Lane.
		
			
				
	
	
		
			47 lines
		
	
	
		
			912 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			912 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| --
 | |
| -- first, define the datatype.  Turn off echoing so that expected file
 | |
| -- does not depend on contents of seg.sql.
 | |
| --
 | |
| \set ECHO none
 | |
| CREATE TABLE test__int( a int[] );
 | |
| \copy test__int from 'data/test__int.data'
 | |
| SELECT count(*) from test__int WHERE a && '{23,50}';
 | |
|  count 
 | |
| -------
 | |
|    403
 | |
| (1 row)
 | |
| 
 | |
| SELECT count(*) from test__int WHERE a @ '{23,50}';
 | |
|  count 
 | |
| -------
 | |
|     12
 | |
| (1 row)
 | |
| 
 | |
| CREATE INDEX text_idx on test__int using gist ( a gist__int_ops ) with ( islossy );
 | |
| SELECT count(*) from test__int WHERE a && '{23,50}';
 | |
|  count 
 | |
| -------
 | |
|    403
 | |
| (1 row)
 | |
| 
 | |
| SELECT count(*) from test__int WHERE a @ '{23,50}';
 | |
|  count 
 | |
| -------
 | |
|     12
 | |
| (1 row)
 | |
| 
 | |
| drop index text_idx;
 | |
| CREATE INDEX text_idx on test__int using gist ( a gist__intbig_ops ) with ( islossy );
 | |
| SELECT count(*) from test__int WHERE a && '{23,50}';
 | |
|  count 
 | |
| -------
 | |
|    403
 | |
| (1 row)
 | |
| 
 | |
| SELECT count(*) from test__int WHERE a @ '{23,50}';
 | |
|  count 
 | |
| -------
 | |
|     12
 | |
| (1 row)
 | |
| 
 |