HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.2.34
System: Linux atalantini.com 3.10.0-1127.13.1.el7.x86_64 #1 SMP Tue Jun 23 15:46:38 UTC 2020 x86_64
User: root (0)
PHP: 7.2.34
Disabled: NONE
Upload Files
File: //usr/share/mysql-test/r/gis-rt-precise.result
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (
fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
g GEOMETRY NOT NULL,
SPATIAL KEY(g)
) ENGINE=MyISAM;
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `fid` int(11) NOT NULL AUTO_INCREMENT,
  `g` geometry NOT NULL,
  PRIMARY KEY (`fid`),
  SPATIAL KEY `g` (`g`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SELECT count(*) FROM t1;
count(*)
150
EXPLAIN SELECT fid, AsText(g) FROM t1 WHERE ST_Within(g, GeomFromText('Polygon((140 140,160 140,160 160,140 140))'));
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	t1	range	g	g	34	NULL	8	Using where
SELECT fid, AsText(g) FROM t1 WHERE ST_Within(g, GeomFromText('Polygon((140 140,160 140,160 160,140 160,140 140))'));
fid	AsText(g)
1	LINESTRING(150 150,150 150)
3	LINESTRING(148 148,152 152)
4	LINESTRING(147 147,153 153)
5	LINESTRING(146 146,154 154)
6	LINESTRING(145 145,155 155)
7	LINESTRING(144 144,156 156)
8	LINESTRING(143 143,157 157)
9	LINESTRING(142 142,158 158)
10	LINESTRING(141 141,159 159)
11	LINESTRING(140 140,160 160)
2	LINESTRING(149 149,151 151)
DROP TABLE t1;
CREATE TABLE t1 (
fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
g GEOMETRY NOT NULL
) ENGINE=MyISAM;
ALTER TABLE t1 ADD SPATIAL KEY(g);
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `fid` int(11) NOT NULL AUTO_INCREMENT,
  `g` geometry NOT NULL,
  PRIMARY KEY (`fid`),
  SPATIAL KEY `g` (`g`)
) ENGINE=MyISAM AUTO_INCREMENT=101 DEFAULT CHARSET=latin1
SELECT count(*) FROM t1;
count(*)
100
EXPLAIN SELECT fid, AsText(g) FROM t1 WHERE ST_Within(g, 
GeomFromText('Polygon((40 40,60 40,60 60,40 40))'));
id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
1	SIMPLE	t1	range	g	g	34	NULL	1	Using where
SELECT fid, AsText(g) FROM t1 WHERE ST_Within(g, 
GeomFromText('Polygon((40 40,60 40,60 60,40 40))'));
fid	AsText(g)
46	LINESTRING(51 41,60 50)
56	LINESTRING(41 41,50 50)
45	LINESTRING(51 51,60 60)
DROP TABLE t1;
End of 5.5 tests.