Server IP : 104.21.38.3 / Your IP : 162.158.170.44 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/server/mysql/src/mysql-test/suite/innodb_gis/r/ |
Upload File : |
SET default_storage_engine=InnoDB; DROP TABLE IF EXISTS t1; CREATE TABLE t1 ( fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, g GEOMETRY NOT NULL, KEY gis_key(g(5)) ) ENGINE=InnoDB; 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`), KEY `gis_key` (`g`(5)) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 SELECT count(*) FROM t1; count(*) 150 ANALYZE TABLE t1; Table Op Msg_type Msg_text test.t1 analyze status OK EXPLAIN SELECT fid, ST_AsText(g) FROM t1 WHERE ST_Within(g, ST_GeomFromText('Polygon((140 140,160 140,160 160,140 140))')); id select_type table partitions type possible_keys key key_len ref rows filtered Extra 1 SIMPLE t1 NULL ALL gis_key NULL NULL NULL # 100.00 Using where Warnings: Note 1003 /* select#1 */ select `test`.`t1`.`fid` AS `fid`,st_astext(`test`.`t1`.`g`) AS `ST_AsText(g)` from `test`.`t1` where st_within(`test`.`t1`.`g`,<cache>(st_geometryfromtext('Polygon((140 140,160 140,160 160,140 140))'))) SELECT fid, ST_AsText(g) FROM t1 WHERE ST_Within(g, ST_GeomFromText('Polygon((140 140,160 140,160 160,140 160,140 140))')) ORDER BY fid; fid ST_AsText(g) 1 LINESTRING(150 150,150 150) 2 LINESTRING(149 149,151 151) 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) DROP TABLE t1; CREATE TABLE t1 ( fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY, g GEOMETRY NOT NULL ) ENGINE=InnoDB; 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=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=latin1 SELECT count(*) FROM t1; count(*) 100 SELECT fid, ST_AsText(g) FROM t1 WHERE ST_Within(g, ST_GeomFromText('Polygon((40 40,60 40,60 60,40 40))')) ORDER BY fid; fid ST_AsText(g) 46 LINESTRING(51 41,60 50) DROP TABLE t1; End of 5.5 tests.