1756 lines
78 KiB
Plaintext
1756 lines
78 KiB
Plaintext
# valid characters
|
||
SELECT ST_LONGFROMGEOHASH("0");
|
||
ST_LONGFROMGEOHASH("0")
|
||
-158
|
||
SELECT ST_LONGFROMGEOHASH("z");
|
||
ST_LONGFROMGEOHASH("z")
|
||
158
|
||
SELECT ST_LONGFROMGEOHASH("0z");
|
||
ST_LONGFROMGEOHASH("0z")
|
||
-141
|
||
SELECT ST_LONGFROMGEOHASH("upbp");
|
||
ST_LONGFROMGEOHASH("upbp")
|
||
0
|
||
SELECT ST_LONGFROMGEOHASH("h000");
|
||
ST_LONGFROMGEOHASH("h000")
|
||
0
|
||
SELECT ST_LONGFROMGEOHASH("s000");
|
||
ST_LONGFROMGEOHASH("s000")
|
||
0
|
||
SELECT ST_LONGFROMGEOHASH("0123456789");
|
||
ST_LONGFROMGEOHASH("0123456789")
|
||
-179.55743
|
||
SELECT ST_LONGFROMGEOHASH("9876543210");
|
||
ST_LONGFROMGEOHASH("9876543210")
|
||
-107.79609
|
||
SELECT ST_LONGFROMGEOHASH("bcdefghjkmnpqrstuvwxyz");
|
||
ST_LONGFROMGEOHASH("bcdefghjkmnpqrstuvwxyz")
|
||
-142.6078415216915
|
||
SELECT ST_LONGFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb");
|
||
ST_LONGFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb")
|
||
179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz")
|
||
180
|
||
SELECT ST_LONGFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb");
|
||
ST_LONGFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb")
|
||
180
|
||
SELECT ST_LONGFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp");
|
||
ST_LONGFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp")
|
||
-180
|
||
SELECT ST_LONGFROMGEOHASH("00000000000000000000");
|
||
ST_LONGFROMGEOHASH("00000000000000000000")
|
||
-180
|
||
SELECT ST_LONGFROMGEOHASH("rzzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("rzzzzzzzzzzzzzzzzzzz")
|
||
180
|
||
SELECT ST_LONGFROMGEOHASH("2pbpbpbpbpbpbpbpbpbp");
|
||
ST_LONGFROMGEOHASH("2pbpbpbpbpbpbpbpbpbp")
|
||
-180
|
||
SELECT ST_LONGFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz")
|
||
0
|
||
SELECT ST_LONGFROMGEOHASH("gzzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("gzzzzzzzzzzzzzzzzzzz")
|
||
0
|
||
SELECT ST_LONGFROMGEOHASH("5bpbpbpbpbpbpbpbpbpb");
|
||
ST_LONGFROMGEOHASH("5bpbpbpbpbpbpbpbpbpb")
|
||
0
|
||
SELECT ST_LONGFROMGEOHASH("0000000000zzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("0000000000zzzzzzzzzz")
|
||
-179.999989271164
|
||
SELECT ST_LONGFROMGEOHASH("zzzzzzzzzz0000000000");
|
||
ST_LONGFROMGEOHASH("zzzzzzzzzz0000000000")
|
||
179.999989271164
|
||
SELECT ST_LONGFROMGEOHASH("s000000001z7wsg7zzm6");
|
||
ST_LONGFROMGEOHASH("s000000001z7wsg7zzm6")
|
||
0.00001
|
||
SELECT ST_LONGFROMGEOHASH("kpbpbpbpbnpkqe5kpbtm");
|
||
ST_LONGFROMGEOHASH("kpbpbpbpbnpkqe5kpbtm")
|
||
0.00001
|
||
SELECT ST_LONGFROMGEOHASH("ebpbpbpbpcbe9kuebp6d");
|
||
ST_LONGFROMGEOHASH("ebpbpbpbpcbe9kuebp6d")
|
||
-0.00001
|
||
SELECT ST_LONGFROMGEOHASH("7zzzzzzzzy0s37hs00dt");
|
||
ST_LONGFROMGEOHASH("7zzzzzzzzy0s37hs00dt")
|
||
-0.00001
|
||
SELECT ST_LONGFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz")
|
||
90
|
||
SELECT ST_LONGFROMGEOHASH("jzzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("jzzzzzzzzzzzzzzzzzzz")
|
||
90
|
||
SELECT ST_LONGFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz")
|
||
-90
|
||
SELECT ST_LONGFROMGEOHASH("1zzzzzzzzzzzzzzzzzzz");
|
||
ST_LONGFROMGEOHASH("1zzzzzzzzzzzzzzzzzzz")
|
||
-90
|
||
SELECT ST_LONGFROMGEOHASH("ypzpgxczbzurypzpgxcz");
|
||
ST_LONGFROMGEOHASH("ypzpgxczbzurypzpgxcz")
|
||
100
|
||
SELECT ST_LONGFROMGEOHASH("czbzurypzpgxczbzuryp");
|
||
ST_LONGFROMGEOHASH("czbzurypzpgxczbzuryp")
|
||
-100
|
||
SELECT ST_LONGFROMGEOHASH("0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z");
|
||
ST_LONGFROMGEOHASH("0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z")
|
||
-145.16129032258067
|
||
SELECT ST_LONGFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz");
|
||
ST_LONGFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz")
|
||
-179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ");
|
||
ST_LONGFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ")
|
||
-179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210");
|
||
ST_LONGFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210")
|
||
179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210");
|
||
ST_LONGFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210")
|
||
179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("1e1");
|
||
ST_LONGFROMGEOHASH("1e1")
|
||
-110
|
||
SELECT ST_LONGFROMGEOHASH("100");
|
||
ST_LONGFROMGEOHASH("100")
|
||
-134
|
||
SELECT ST_LONGFROMGEOHASH(CAST(100 AS CHAR));
|
||
ST_LONGFROMGEOHASH(CAST(100 AS CHAR))
|
||
-134
|
||
SELECT ST_LONGFROMGEOHASH("10111000110001111001");
|
||
ST_LONGFROMGEOHASH("10111000110001111001")
|
||
-133.549761770805
|
||
SELECT ST_LONGFROMGEOHASH("11111111111111111111");
|
||
ST_LONGFROMGEOHASH("11111111111111111111")
|
||
-133.548387096774
|
||
SELECT ST_LONGFROMGEOHASH("99999999999999999999");
|
||
ST_LONGFROMGEOHASH("99999999999999999999")
|
||
-110.3225806451612
|
||
SELECT ST_LONGFROMGEOHASH(NULL);
|
||
ST_LONGFROMGEOHASH(NULL)
|
||
NULL
|
||
SELECT ST_LONGFROMGEOHASH(null);
|
||
ST_LONGFROMGEOHASH(null)
|
||
NULL
|
||
# invalid characters and inputs
|
||
SELECT ST_LONGFROMGEOHASH("0123a45");
|
||
ERROR HY000: Incorrect geohash value: '0123a45' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("xyzi");
|
||
ERROR HY000: Incorrect geohash value: 'xyzi' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("zyxLwv");
|
||
ERROR HY000: Incorrect geohash value: 'zyxLwv' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("bcdjo");
|
||
ERROR HY000: Incorrect geohash value: 'bcdjo' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("zyx**wv");
|
||
ERROR HY000: Incorrect geohash value: 'zyx**wv' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("1 2 3 4");
|
||
ERROR HY000: Incorrect geohash value: '1 2 3 4' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("1''2345");
|
||
ERROR HY000: Incorrect geohash value: '1''2345' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("12.345");
|
||
ERROR HY000: Incorrect geohash value: '12.345' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH(" ");
|
||
ERROR HY000: Incorrect geohash value: ' ' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("NULL");
|
||
ERROR HY000: Incorrect geohash value: 'NULL' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("0ë 0Ñ");
|
||
ERROR HY000: Incorrect geohash value: '0<> 0<>' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("-100");
|
||
ERROR HY000: Incorrect geohash value: '-100' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH("");
|
||
ERROR HY000: Incorrect geohash value: '' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LONGFROMGEOHASH(9876543210);
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LONGFROMGEOHASH.
|
||
SELECT ST_LONGFROMGEOHASH(0123456789);
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LONGFROMGEOHASH.
|
||
SELECT ST_LONGFROMGEOHASH(1e1);
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LONGFROMGEOHASH.
|
||
SELECT ST_LONGFROMGEOHASH(CAST("012" AS BINARY));
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LONGFROMGEOHASH.
|
||
SELECT ST_LONGFROMGEOHASH();
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_LONGFROMGEOHASH'
|
||
SELECT ST_LONGFROMGEOHASH("123","456");
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_LONGFROMGEOHASH'
|
||
SELECT ST_LONGFROMGEOHASH("123",);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||
SELECT ST_LONGFROMGEOHASH(,"456");
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"456")' at line 1
|
||
SELECT ST_LONGFROMGEOHASH(,);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||
SELECT ST_LONGFROMGEOHASH("0123456"789);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '789)' at line 1
|
||
SELECT ST_LONGFROMGEOHASH(abcdef);
|
||
ERROR 42S22: Unknown column 'abcdef' in 'field list'
|
||
# very long geohash
|
||
SELECT ST_LONGFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bcdefghjkm"
|
||
"npqrstuvwxyz0123456789bcdefghjkmnpqrstuvwxyz01234567"
|
||
"89bcdefghjkmnpqrstuvwxyz");
|
||
ST_LONGFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bcdefghjkm"
|
||
"npqrstuvwxyz0123456789bcdefghjkmnpqrstuvwxyz01234567"
|
||
"89bcdefghjkmnpqrstuvwxyz")
|
||
-179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789BCDEFGHJKM"
|
||
"NPQRSTUVWXYZ0123456789BCDEFGHJKMNPQRSTUVWXYZ01234567"
|
||
"89BCDEFGHJKMNPQRSTUVWXYZ");
|
||
ST_LONGFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789BCDEFGHJKM"
|
||
"NPQRSTUVWXYZ0123456789BCDEFGHJKMNPQRSTUVWXYZ01234567"
|
||
"89BCDEFGHJKMNPQRSTUVWXYZ")
|
||
-179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrqpnmkjhgfed"
|
||
"cb9876543210zyxwvutsrqpnmkjhgfedcb9876543210zyxwvuts"
|
||
"rqpnmkjhgfedcb9876543210");
|
||
ST_LONGFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrqpnmkjhgfed"
|
||
"cb9876543210zyxwvutsrqpnmkjhgfedcb9876543210zyxwvuts"
|
||
"rqpnmkjhgfedcb9876543210")
|
||
179.55743439816956
|
||
SELECT ST_LONGFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQPNMKJHGFED"
|
||
"CB9876543210ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTS"
|
||
"RQPNMKJHGFEDCB9876543210");
|
||
ST_LONGFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQPNMKJHGFED"
|
||
"CB9876543210ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTS"
|
||
"RQPNMKJHGFEDCB9876543210")
|
||
179.55743439816956
|
||
CREATE TABLE geohashes (gid INT NOT NULL PRIMARY KEY, hash_value VARCHAR(255));
|
||
INSERT INTO geohashes VALUES
|
||
(1, "000000000000000000000"),
|
||
(2, "zzzzzzzzzzzzzzzzzzzzz"),
|
||
(3, NULL),
|
||
(4, "s00t"),
|
||
(5, "7zzzm"),
|
||
(6, "s00d"),
|
||
(7, "0"),
|
||
(8, "z"),
|
||
(9, "3ejh6z75ddt2d839zh2u"),
|
||
(10, "twtsuqg3q7vh3nrbt0nn"),
|
||
(11, "yw8s10dxddhe4s06nsph"),
|
||
(12, "h4g4h9yrjtgzvewxm0ru"),
|
||
(13, "9kqbredcnhq1b44ue48s"),
|
||
(14, "1pckwjkqw3km0v6ye5d2"),
|
||
(15, "wm313fnr92ggsysm64e6"),
|
||
(16, "vqghx20fx6d8r5vfkbgf"),
|
||
(17, "wvetm3u23kr9r6663k31"),
|
||
(18, "e5t2p7sk291vpyb08pwu");
|
||
# different random geohash values
|
||
SELECT ST_LONGFROMGEOHASH(hash_value) FROM geohashes;
|
||
ST_LONGFROMGEOHASH(hash_value)
|
||
-180
|
||
180
|
||
NULL
|
||
1
|
||
-0.1
|
||
1
|
||
-158
|
||
158
|
||
-105.343666081393
|
||
75.4258807526218
|
||
113.2506169687463
|
||
4.4253282778628
|
||
-113.9241805635394
|
||
-132.9724051824284
|
||
102.7417962437673
|
||
60.7886982739903
|
||
128.908488386749
|
||
-37.292723368146
|
||
# valid characters
|
||
SELECT ST_LATFROMGEOHASH("0");
|
||
ST_LATFROMGEOHASH("0")
|
||
-68
|
||
SELECT ST_LATFROMGEOHASH("z");
|
||
ST_LATFROMGEOHASH("z")
|
||
68
|
||
SELECT ST_LATFROMGEOHASH("0z");
|
||
ST_LATFROMGEOHASH("0z")
|
||
-48
|
||
SELECT ST_LATFROMGEOHASH("xbpb");
|
||
ST_LATFROMGEOHASH("xbpb")
|
||
0
|
||
SELECT ST_LATFROMGEOHASH("8000");
|
||
ST_LATFROMGEOHASH("8000")
|
||
0
|
||
SELECT ST_LATFROMGEOHASH("s000");
|
||
ST_LATFROMGEOHASH("s000")
|
||
0
|
||
SELECT ST_LATFROMGEOHASH("0123456789");
|
||
ST_LATFROMGEOHASH("0123456789")
|
||
-82.774507
|
||
SELECT ST_LATFROMGEOHASH("9876543210");
|
||
ST_LATFROMGEOHASH("9876543210")
|
||
1.770175
|
||
SELECT ST_LATFROMGEOHASH("bcdefghjkmnpqrstuvwxyz");
|
||
ST_LATFROMGEOHASH("bcdefghjkmnpqrstuvwxyz")
|
||
54.11408847964353
|
||
SELECT ST_LATFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb");
|
||
ST_LATFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb")
|
||
82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz")
|
||
90
|
||
SELECT ST_LATFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp");
|
||
ST_LATFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp")
|
||
90
|
||
SELECT ST_LATFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb");
|
||
ST_LATFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb")
|
||
-90
|
||
SELECT ST_LATFROMGEOHASH("00000000000000000000");
|
||
ST_LATFROMGEOHASH("00000000000000000000")
|
||
-90
|
||
SELECT ST_LATFROMGEOHASH("gzzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("gzzzzzzzzzzzzzzzzzzz")
|
||
90
|
||
SELECT ST_LATFROMGEOHASH("5bpbpbpbpbpbpbpbpbpb");
|
||
ST_LATFROMGEOHASH("5bpbpbpbpbpbpbpbpbpb")
|
||
-90
|
||
SELECT ST_LATFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz")
|
||
0
|
||
SELECT ST_LATFROMGEOHASH("rzzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("rzzzzzzzzzzzzzzzzzzz")
|
||
0
|
||
SELECT ST_LATFROMGEOHASH("2pbpbpbpbpbpbpbpbpbp");
|
||
ST_LATFROMGEOHASH("2pbpbpbpbpbpbpbpbpbp")
|
||
0
|
||
SELECT ST_LATFROMGEOHASH("0000000000zzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("0000000000zzzzzzzzzz")
|
||
-89.999994635582
|
||
SELECT ST_LATFROMGEOHASH("zzzzzzzzzz0000000000");
|
||
ST_LATFROMGEOHASH("zzzzzzzzzz0000000000")
|
||
89.999994635582
|
||
SELECT ST_LATFROMGEOHASH("s000000001z7wsg7zzm6");
|
||
ST_LATFROMGEOHASH("s000000001z7wsg7zzm6")
|
||
0.00001
|
||
SELECT ST_LATFROMGEOHASH("ebpbpbpbpcbe9kuebp6d");
|
||
ST_LATFROMGEOHASH("ebpbpbpbpcbe9kuebp6d")
|
||
0.00001
|
||
SELECT ST_LATFROMGEOHASH("kpbpbpbpbnpkqe5kpbtm");
|
||
ST_LATFROMGEOHASH("kpbpbpbpbnpkqe5kpbtm")
|
||
-0.00001
|
||
SELECT ST_LATFROMGEOHASH("7zzzzzzzzy0s37hs00dt");
|
||
ST_LATFROMGEOHASH("7zzzzzzzzy0s37hs00dt")
|
||
-0.00001
|
||
SELECT ST_LATFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz")
|
||
45
|
||
SELECT ST_LATFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz")
|
||
45
|
||
SELECT ST_LATFROMGEOHASH("jzzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("jzzzzzzzzzzzzzzzzzzz")
|
||
-45
|
||
SELECT ST_LATFROMGEOHASH("1zzzzzzzzzzzzzzzzzzz");
|
||
ST_LATFROMGEOHASH("1zzzzzzzzzzzzzzzzzzz")
|
||
-45
|
||
SELECT ST_LATFROMGEOHASH("zbzurypzpgxczbzurypz");
|
||
ST_LATFROMGEOHASH("zbzurypzpgxczbzurypz")
|
||
50
|
||
SELECT ST_LATFROMGEOHASH("5zpgxczbzurypzpgxczb");
|
||
ST_LATFROMGEOHASH("5zpgxczbzurypzpgxczb")
|
||
-50
|
||
SELECT ST_LATFROMGEOHASH("0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z");
|
||
ST_LATFROMGEOHASH("0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z")
|
||
-49.35483870967742
|
||
SELECT ST_LATFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz");
|
||
ST_LATFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz")
|
||
-82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ");
|
||
ST_LATFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ")
|
||
-82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210");
|
||
ST_LATFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210")
|
||
82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210");
|
||
ST_LATFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210")
|
||
82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("1e1");
|
||
ST_LATFROMGEOHASH("1e1")
|
||
-72
|
||
SELECT ST_LATFROMGEOHASH("100");
|
||
ST_LATFROMGEOHASH("100")
|
||
-89
|
||
SELECT ST_LATFROMGEOHASH(CAST(100 AS CHAR));
|
||
ST_LATFROMGEOHASH(CAST(100 AS CHAR))
|
||
-89
|
||
SELECT ST_LATFROMGEOHASH("10111000110001111001");
|
||
ST_LATFROMGEOHASH("10111000110001111001")
|
||
-89.8242133801793
|
||
SELECT ST_LATFROMGEOHASH("11111111111111111111");
|
||
ST_LATFROMGEOHASH("11111111111111111111")
|
||
-84.1935483870967
|
||
SELECT ST_LATFROMGEOHASH("99999999999999999999");
|
||
ST_LATFROMGEOHASH("99999999999999999999")
|
||
8.7096774193548
|
||
SELECT ST_LATFROMGEOHASH(NULL);
|
||
ST_LATFROMGEOHASH(NULL)
|
||
NULL
|
||
SELECT ST_LATFROMGEOHASH(null);
|
||
ST_LATFROMGEOHASH(null)
|
||
NULL
|
||
# invalid characters and inputs
|
||
SELECT ST_LATFROMGEOHASH("0123a45");
|
||
ERROR HY000: Incorrect geohash value: '0123a45' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("xyzi");
|
||
ERROR HY000: Incorrect geohash value: 'xyzi' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("zyxLwv");
|
||
ERROR HY000: Incorrect geohash value: 'zyxLwv' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("bcdjo");
|
||
ERROR HY000: Incorrect geohash value: 'bcdjo' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("zyx**wv");
|
||
ERROR HY000: Incorrect geohash value: 'zyx**wv' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("1 2 3 4");
|
||
ERROR HY000: Incorrect geohash value: '1 2 3 4' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("1''2345");
|
||
ERROR HY000: Incorrect geohash value: '1''2345' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("12.345");
|
||
ERROR HY000: Incorrect geohash value: '12.345' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH(" ");
|
||
ERROR HY000: Incorrect geohash value: ' ' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("NULL");
|
||
ERROR HY000: Incorrect geohash value: 'NULL' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("0ë 0Ñ");
|
||
ERROR HY000: Incorrect geohash value: '0<> 0<>' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("-100");
|
||
ERROR HY000: Incorrect geohash value: '-100' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH("");
|
||
ERROR HY000: Incorrect geohash value: '' for function ST_LATFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH(9876543210);
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LATFROMGEOHASH.
|
||
SELECT ST_LATFROMGEOHASH(0123456789);
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LATFROMGEOHASH.
|
||
SELECT ST_LATFROMGEOHASH(1e1);
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LATFROMGEOHASH.
|
||
SELECT ST_LATFROMGEOHASH(CAST("012" AS BINARY));
|
||
ERROR HY000: Incorrect type for argument geohash in function ST_LATFROMGEOHASH.
|
||
SELECT ST_LATFROMGEOHASH();
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_LATFROMGEOHASH'
|
||
SELECT ST_LATFROMGEOHASH("123","456");
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_LATFROMGEOHASH'
|
||
SELECT ST_LATFROMGEOHASH("123",);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||
SELECT ST_LATFROMGEOHASH(,"456");
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"456")' at line 1
|
||
SELECT ST_LATFROMGEOHASH(,);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||
SELECT ST_LATFROMGEOHASH("0123456"789);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '789)' at line 1
|
||
SELECT ST_LATFROMGEOHASH(abcdef);
|
||
ERROR 42S22: Unknown column 'abcdef' in 'field list'
|
||
# very long geohash
|
||
SELECT ST_LATFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bcdefghjkmn"
|
||
"pqrstuvwxyz0123456789bcdefghjkmnpqrstuvwxyz0123456789"
|
||
"bcdefghjkmnpqrstuvwxyz");
|
||
ST_LATFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bcdefghjkmn"
|
||
"pqrstuvwxyz0123456789bcdefghjkmnpqrstuvwxyz0123456789"
|
||
"bcdefghjkmnpqrstuvwxyz")
|
||
-82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789BCDEFGHJKMN"
|
||
"PQRSTUVWXYZ0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789"
|
||
"BCDEFGHJKMNPQRSTUVWXYZ");
|
||
ST_LATFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789BCDEFGHJKMN"
|
||
"PQRSTUVWXYZ0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789"
|
||
"BCDEFGHJKMNPQRSTUVWXYZ")
|
||
-82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrqpnmkjhgfedc"
|
||
"b9876543210zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrq"
|
||
"pnmkjhgfedcb9876543210");
|
||
ST_LATFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrqpnmkjhgfedc"
|
||
"b9876543210zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrq"
|
||
"pnmkjhgfedcb9876543210")
|
||
82.77450549262497
|
||
SELECT ST_LATFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQPNMKJHGFEDC"
|
||
"B9876543210ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQ"
|
||
"PNMKJHGFEDCB9876543210");
|
||
ST_LATFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQPNMKJHGFEDC"
|
||
"B9876543210ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQ"
|
||
"PNMKJHGFEDCB9876543210")
|
||
82.77450549262497
|
||
# different random geohash values
|
||
SELECT ST_LATFROMGEOHASH(hash_value) FROM geohashes;
|
||
ST_LATFROMGEOHASH(hash_value)
|
||
-90
|
||
90
|
||
NULL
|
||
1
|
||
-0.1
|
||
0.4
|
||
-68
|
||
68
|
||
-27.3374899367448
|
||
37.4347752334972
|
||
82.269670295412
|
||
-74.168840669129
|
||
23.9696161514665
|
||
-45.5852718924236
|
||
29.763254995923
|
||
83.7602082514146
|
||
31.8700305354552
|
||
19.7074618731612
|
||
# valid characters
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0", 0));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0", 0))
|
||
POINT(-158 -68)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("z", 1));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("z", 1))
|
||
POINT(158 68)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0z", 10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0z", 10))
|
||
POINT(-141 -48)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("xbpb", 100));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("xbpb", 100))
|
||
POINT(180 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("8000", 1000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("8000", 1000))
|
||
POINT(-180 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("s000", 10000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("s000", 10000))
|
||
POINT(0 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789", 100000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789", 100000))
|
||
POINT(-179.55743 -82.774507)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("9876543210", 1000000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("9876543210", 1000000))
|
||
POINT(-107.79609 1.770175)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("bcdefghjkmnpqrstuvwxyz", 1));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("bcdefghjkmnpqrstuvwxyz", 1))
|
||
POINT(-142.6078415216915 54.11408847964353)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb", 1));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb", 1))
|
||
POINT(179.55743439816956 82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz", 25));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz", 25))
|
||
POINT(180 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp", 25));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp", 25))
|
||
POINT(-180 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb", 25));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb", 25))
|
||
POINT(180 -90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", 25));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", 25))
|
||
POINT(-180 -90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("gzzzzzzzzzzzzzzzzzzz", 5000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("gzzzzzzzzzzzzzzzzzzz", 5000))
|
||
POINT(0 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("5bpbpbpbpbpbpbpbpbpb", 5000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("5bpbpbpbpbpbpbpbpbpb", 5000))
|
||
POINT(0 -90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz", 5000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz", 5000))
|
||
POINT(0 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("rzzzzzzzzzzzzzzzzzzz", 12345));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("rzzzzzzzzzzzzzzzzzzz", 12345))
|
||
POINT(180 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("2pbpbpbpbpbpbpbpbpbp", 67890));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("2pbpbpbpbpbpbpbpbpbp", 67890))
|
||
POINT(-180 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0000000000zzzzzzzzzz", 1234567890));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0000000000zzzzzzzzzz", 1234567890))
|
||
POINT(-179.999989271164 -89.999994635582)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzz0000000000", 1234567890));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzz0000000000", 1234567890))
|
||
POINT(179.999989271164 89.999994635582)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("s000000001z7wsg7zzm6", 1234567890));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("s000000001z7wsg7zzm6", 1234567890))
|
||
POINT(0.00001 0.00001)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("ebpbpbpbpcbe9kuebp6d", 1000000000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("ebpbpbpbpcbe9kuebp6d", 1000000000))
|
||
POINT(-0.00001 0.00001)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("kpbpbpbpbnpkqe5kpbtm", 1000000000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("kpbpbpbpbnpkqe5kpbtm", 1000000000))
|
||
POINT(0.00001 -0.00001)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("7zzzzzzzzy0s37hs00dt", 1000000000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("7zzzzzzzzy0s37hs00dt", 1000000000))
|
||
POINT(-0.00001 -0.00001)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz", 4294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz", 4294967295))
|
||
POINT(90 45)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz", 4294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz", 4294967295))
|
||
POINT(-90 45)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("jzzzzzzzzzzzzzzzzzzz", 4294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("jzzzzzzzzzzzzzzzzzzz", 4294967295))
|
||
POINT(90 -45)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("1zzzzzzzzzzzzzzzzzzz", 4294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("1zzzzzzzzzzzzzzzzzzz", 4294967295))
|
||
POINT(-90 -45)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zbzurypzpgxczbzurypz", 429496729));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("zbzurypzpgxczbzurypz", 429496729))
|
||
POINT(180 50)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("5zpgxczbzurypzpgxczb", 429496729));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("5zpgxczbzurypzpgxczb", 429496729))
|
||
POINT(0 -50)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z", 04294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z", 04294967295))
|
||
POINT(-145.16129032258067 -49.35483870967742)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz", 04294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz", 04294967295))
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ", 04294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ", 04294967295))
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210", 04294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210", 04294967295))
|
||
POINT(179.55743439816956 82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210", 04294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210", 04294967295))
|
||
POINT(179.55743439816956 82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("1e1", " "));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("1e1", " "))
|
||
POINT(-110 -72)
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect INTEGER value: ' '
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("100", "1 2 3"));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("100", "1 2 3"))
|
||
POINT(-134 -89)
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect INTEGER value: '1 2 3'
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(CAST(100 AS CHAR), 1));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(CAST(100 AS CHAR), 1))
|
||
POINT(-134 -89)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("10111000110001111001", "0"));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("10111000110001111001", "0"))
|
||
POINT(-133.549761770805 -89.8242133801793)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("11111111111111111111", "1234567890"));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("11111111111111111111", "1234567890"))
|
||
POINT(-133.548387096774 -84.1935483870967)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("99999999999999999999", "4294967295"));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("99999999999999999999", "4294967295"))
|
||
POINT(-110.3225806451612 8.7096774193548)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", " ***** "));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", " ***** "))
|
||
POINT(-180 -90)
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect INTEGER value: ' ***** '
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", " 1.23 "));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", " 1.23 "))
|
||
POINT(-180 -90)
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect INTEGER value: ' 1.23 '
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz", (CAST(100 AS CHAR))));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz", (CAST(100 AS CHAR))))
|
||
POINT(180 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(NULL, 200));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(NULL, 200))
|
||
NULL
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(null, 200));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(null, 200))
|
||
NULL
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz", NULL));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("tzzzzzzzzzzzzzzzzzzz", NULL))
|
||
NULL
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz", null));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("9zzzzzzzzzzzzzzzzzzz", null))
|
||
NULL
|
||
# invalid characters and inputs
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123a45", 1));
|
||
ERROR HY000: Incorrect geohash value: '0123a45' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("xyzi", 1));
|
||
ERROR HY000: Incorrect geohash value: 'xyzi' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zyxLwv", 1));
|
||
ERROR HY000: Incorrect geohash value: 'zyxLwv' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("bcdjo", 1));
|
||
ERROR HY000: Incorrect geohash value: 'bcdjo' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zyx**wv", 1));
|
||
ERROR HY000: Incorrect geohash value: 'zyx**wv' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("1 2 3 4", 1));
|
||
ERROR HY000: Incorrect geohash value: '1 2 3 4' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("1''2345", 1));
|
||
ERROR HY000: Incorrect geohash value: '1''2345' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("12.345", 1));
|
||
ERROR HY000: Incorrect geohash value: '12.345' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(" ", 1));
|
||
ERROR HY000: Incorrect geohash value: ' ' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("NULL", 1));
|
||
ERROR HY000: Incorrect geohash value: 'NULL' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0ë 0Ñ", 1));
|
||
ERROR HY000: Incorrect geohash value: '0<> 0<>' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("-100", 1));
|
||
ERROR HY000: Incorrect geohash value: '-100' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("", 20000));
|
||
ERROR HY000: Incorrect geohash value: '' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(9876543210, 1));
|
||
ERROR HY000: Incorrect type for argument geohash in function st_pointfromgeohash.
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(0123456789, 1));
|
||
ERROR HY000: Incorrect type for argument geohash in function st_pointfromgeohash.
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(1e1, 1));
|
||
ERROR HY000: Incorrect type for argument geohash in function st_pointfromgeohash.
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(CAST("012" AS BINARY), 1));
|
||
ERROR HY000: Incorrect type for argument geohash in function st_pointfromgeohash.
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz", (CAST(100 AS BINARY))));
|
||
ERROR HY000: Incorrect type for argument SRID in function st_pointfromgeohash.
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("rzzzzzzzzzzzzzzzzzzz", 12345.67890));
|
||
ERROR HY000: Incorrect type for argument SRID in function st_pointfromgeohash.
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz", 4294967296));
|
||
ERROR HY000: Incorrect SRID value: '4294967296' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp", 10000000000));
|
||
ERROR HY000: Incorrect SRID value: '10000000000' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb", 4294967295000));
|
||
ERROR HY000: Incorrect SRID value: '4294967295000' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("gzzzzzzzzzzzzzzzzzzz", -1));
|
||
ERROR HY000: Incorrect SRID value: '-1' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("5bpbpbpbpbpbpbpbpbpb", -1024));
|
||
ERROR HY000: Incorrect SRID value: '-1024' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz", -04294967295));
|
||
ERROR HY000: Incorrect SRID value: '-4294967295' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", "4294967296"));
|
||
ERROR HY000: Incorrect SRID value: '4294967296' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", "10000000000"));
|
||
ERROR HY000: Incorrect SRID value: '10000000000' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", "-1"));
|
||
ERROR HY000: Incorrect SRID value: '-1' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00000000000000000000", "-1024"));
|
||
ERROR HY000: Incorrect SRID value: '-1024' for function st_pointfromgeohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("123",));
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '))' at line 1
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(,"456"));
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '"456"))' at line 1
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(,));
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '))' at line 1
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123456"789));
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '789))' at line 1
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("7zzzzzzzzzzzzzzzzzzz", ****));
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '****))' at line 1
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"));
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_POINTFROMGEOHASH'
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH());
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_POINTFROMGEOHASH'
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(abcdef));
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_POINTFROMGEOHASH'
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH((1, 1), 1));
|
||
ERROR 21000: Operand should contain 1 column(s)
|
||
# very long geohash
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bc"
|
||
"defghjkmnpqrstuvwxyz0123456789bcdefghjkmnpqr"
|
||
"stuvwxyz0123456789bcdefghjkmnpqrstuvwxyz", 0));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bc"
|
||
"defghjkmnpqrstuvwxyz0123456789bcdefghjkmnpqr"
|
||
"stuvwxyz0123456789bcdefghjkmnpqrstuvwxyz", 0))
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789BC"
|
||
"DEFGHJKMNPQRSTUVWXYZ0123456789BCDEFGHJKMNPQR"
|
||
"STUVWXYZ0123456789BCDEFGHJKMNPQRSTUVWXYZ", 10000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789BCDEFGHJKMNPQRSTUVWXYZ0123456789BC"
|
||
"DEFGHJKMNPQRSTUVWXYZ0123456789BCDEFGHJKMNPQR"
|
||
"STUVWXYZ0123456789BCDEFGHJKMNPQRSTUVWXYZ", 10000))
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrqpn"
|
||
"mkjhgfedcb9876543210zyxwvutsrqpnmkjhgfedcb98"
|
||
"76543210zyxwvutsrqpnmkjhgfedcb9876543210", 1234567890));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("zyxwvutsrqpnmkjhgfedcb9876543210zyxwvutsrqpn"
|
||
"mkjhgfedcb9876543210zyxwvutsrqpnmkjhgfedcb98"
|
||
"76543210zyxwvutsrqpnmkjhgfedcb9876543210", 1234567890))
|
||
POINT(179.55743439816956 82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQPN"
|
||
"MKJHGFEDCB9876543210ZYXWVUTSRQPNMKJHGFEDCB98"
|
||
"76543210ZYXWVUTSRQPNMKJHGFEDCB9876543210", 4294967295));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("ZYXWVUTSRQPNMKJHGFEDCB9876543210ZYXWVUTSRQPN"
|
||
"MKJHGFEDCB9876543210ZYXWVUTSRQPNMKJHGFEDCB98"
|
||
"76543210ZYXWVUTSRQPNMKJHGFEDCB9876543210", 4294967295))
|
||
POINT(179.55743439816956 82.77450549262497)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bc"
|
||
"defghjkmnpqrstuvwxyz0123456789bcdefghjkmnpqr"
|
||
"stuvwxyz0123456789bcdefghjkmnpqrstuvwxyz0123"
|
||
"456789bcdefghjkmnpqrstuvwxyz0123456789bcdefg"
|
||
"hjkmnpqrstuvwxyz0123456789bcdefghjkmnpqrstuv"
|
||
"wxyz01234567890123456789bcdefghjkmnpqrstuvwx"
|
||
"yz0123456789bcdefghjkmnpqrstuvwxyz0123456789"
|
||
"bcdefghjkmnpqrstuvwxyz0123456789bcdefghjkmnp"
|
||
"qrstuvwxyz0123456789bcdefghjkmnpqrstuvwxyz01"
|
||
"23456789bcdefghjkmnpqrstuvwxyz0123456789bcde"
|
||
"fghjkmnpqrstuvwxyz", 4326));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("0123456789bcdefghjkmnpqrstuvwxyz0123456789bc"
|
||
"defghjkmnpqrstuvwxyz0123456789bcdefghjkmnpqr"
|
||
"stuvwxyz0123456789bcdefghjkmnpqrstuvwxyz0123"
|
||
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
# different random geohash values
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(hash_value,1000)) FROM geohashes;
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(hash_value,1000))
|
||
POINT(-180 -90)
|
||
POINT(180 90)
|
||
NULL
|
||
POINT(1 1)
|
||
POINT(-0.1 -0.1)
|
||
POINT(1 0.4)
|
||
POINT(-158 -68)
|
||
POINT(158 68)
|
||
POINT(-105.343666081393 -27.3374899367448)
|
||
POINT(75.4258807526218 37.4347752334972)
|
||
POINT(113.2506169687463 82.269670295412)
|
||
POINT(4.4253282778628 -74.168840669129)
|
||
POINT(-113.9241805635394 23.9696161514665)
|
||
POINT(-132.9724051824284 -45.5852718924236)
|
||
POINT(102.7417962437673 29.763254995923)
|
||
POINT(60.7886982739903 83.7602082514146)
|
||
POINT(128.908488386749 31.8700305354552)
|
||
POINT(-37.292723368146 19.7074618731612)
|
||
# Test create table from SELECT statement
|
||
CREATE TABLE t1 AS SELECT ST_POINTFROMGEOHASH("0123", 4326);
|
||
EXPLAIN t1;
|
||
Field Type Null Key Default Extra
|
||
ST_POINTFROMGEOHASH("0123", 4326) point NO
|
||
DROP TABLE t1;
|
||
# valid inputs
|
||
SELECT ST_GEOHASH(0,0,1);
|
||
ST_GEOHASH(0,0,1)
|
||
s
|
||
SELECT ST_GEOHASH(180,0,20);
|
||
ST_GEOHASH(180,0,20)
|
||
xbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(-180,0,20);
|
||
ST_GEOHASH(-180,0,20)
|
||
80000000000000000000
|
||
SELECT ST_GEOHASH(0,90,20);
|
||
ST_GEOHASH(0,90,20)
|
||
upbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(0,-90,20);
|
||
ST_GEOHASH(0,-90,20)
|
||
h0000000000000000000
|
||
SELECT ST_GEOHASH(180,90,20);
|
||
ST_GEOHASH(180,90,20)
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(180,-90,20);
|
||
ST_GEOHASH(180,-90,20)
|
||
pbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(-180,90,20);
|
||
ST_GEOHASH(-180,90,20)
|
||
bpbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(-180,-90,20);
|
||
ST_GEOHASH(-180,-90,20)
|
||
00000000000000000000
|
||
SELECT ST_GEOHASH(100,45,5);
|
||
ST_GEOHASH(100,45,5)
|
||
y0p05
|
||
SELECT ST_GEOHASH(100,-45,10);
|
||
ST_GEOHASH(100,-45,10)
|
||
q0p0581b0b
|
||
SELECT ST_GEOHASH(-100,45,+50);
|
||
ST_GEOHASH(-100,45,+50)
|
||
cb0bh2n0p0581b0bh2n0p8
|
||
SELECT ST_GEOHASH(0.0001,0.0001,10);
|
||
ST_GEOHASH(0.0001,0.0001,10)
|
||
s0000000d6
|
||
SELECT ST_GEOHASH(0.0001,-0.0001,30);
|
||
ST_GEOHASH(0.0001,-0.0001,30)
|
||
kpbpbpbp6m6e6p6bpntebbpkpnqbuf
|
||
SELECT ST_GEOHASH(-0.0001,0.0001,90);
|
||
ST_GEOHASH(-0.0001,0.0001,90)
|
||
ebpbpbpbtdtktbtpbc6kppbebc9p5q000000000000000000000000000000000000000000000000000000000000
|
||
SELECT ST_GEOHASH(-0.0001,-0.0001,100);
|
||
ST_GEOHASH(-0.0001,-0.0001,100)
|
||
7zzzzzzzmtm7mzm00yd7z00s0y30g60000000000000000000000000000000000000000000000000000000000000000000000
|
||
SELECT ST_GEOHASH("",90,10);
|
||
ST_GEOHASH("",90,10)
|
||
upbpbpbpbp
|
||
SELECT ST_GEOHASH(0,"90",10);
|
||
ST_GEOHASH(0,"90",10)
|
||
upbpbpbpbp
|
||
SELECT ST_GEOHASH("0","0",10);
|
||
ST_GEOHASH("0","0",10)
|
||
s000000000
|
||
SELECT ST_GEOHASH(180,90,"20");
|
||
ST_GEOHASH(180,90,"20")
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH("180","90","20");
|
||
ST_GEOHASH("180","90","20")
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH("***",90,"20");
|
||
ST_GEOHASH("***",90,"20")
|
||
upbpbpbpbpbpbpbpbpbp
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect DOUBLE value: '***'
|
||
SELECT ST_GEOHASH(180,"***",20);
|
||
ST_GEOHASH(180,"***",20)
|
||
xbpbpbpbpbpbpbpbpbpb
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect DOUBLE value: '***'
|
||
SELECT ST_GEOHASH("abcd",90,20);
|
||
ST_GEOHASH("abcd",90,20)
|
||
upbpbpbpbpbpbpbpbpbp
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect DOUBLE value: 'abcd'
|
||
SELECT ST_GEOHASH(180,"abcd",25-5);
|
||
ST_GEOHASH(180,"abcd",25-5)
|
||
xbpbpbpbpbpbpbpbpbpb
|
||
Warnings:
|
||
Warning 1292 Truncated incorrect DOUBLE value: 'abcd'
|
||
SELECT ST_GEOHASH(NULL,90,10);
|
||
ST_GEOHASH(NULL,90,10)
|
||
NULL
|
||
SELECT ST_GEOHASH(180,NULL,10);
|
||
ST_GEOHASH(180,NULL,10)
|
||
NULL
|
||
SELECT ST_GEOHASH(180,90,NULL);
|
||
ST_GEOHASH(180,90,NULL)
|
||
NULL
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),10);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),10)
|
||
s000000000
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 0)'),20);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 0)'),20)
|
||
xbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 0)'),25);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 0)'),25)
|
||
8000000000000000000002pbp
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 90)'),30);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 90)'),30)
|
||
upbpbpbpbpbpbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 -90)'),35);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 -90)'),35)
|
||
h000000000000000000001bpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 90)'),40);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 90)'),40)
|
||
zzzzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 -90)'),45);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 -90)'),45)
|
||
pbpbpbpbpbpbpbpbpbpbpc
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 90)'),50);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 90)'),50)
|
||
bpbpbpbpbpbpbpbpbpbpbr
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 -90)'),55);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 -90)'),55)
|
||
0000000000000000000003
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 45)'),60);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 45)'),60)
|
||
y0p0581b0bh2n0p0581b0b
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 -45)'),65);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 -45)'),65)
|
||
q0p0581b0bh2n0p0581b0b
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-100 45)'),70);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-100 45)'),70)
|
||
cb0bh2n0p0581b0bh2n0p8
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-100 -45)'),75);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-100 -45)'),75)
|
||
3b0bh2n0p0581b0bh2n0p8
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(0.0001 0.0001)'))),80);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(0.0001 0.0001)'))),80)
|
||
s0000000d6dsd0dzz1ms0zz7z1wzhy00000000000000000000000000000000000000000000000000
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(0.0001 -0.0001)'))),85);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(0.0001 -0.0001)'))),85)
|
||
kpbpbpbp6m6e6p6bpntebbpkpnqbuf0000000000000000000000000000000000000000000000000000000
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(-0.0001 0.0001)'))),90);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(-0.0001 0.0001)'))),90)
|
||
ebpbpbpbtdtktbtpbc6kppbebc9p5q000000000000000000000000000000000000000000000000000000000000
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(-0.0001 -0.0001)'))),100);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(-0.0001 -0.0001)'))),100)
|
||
7zzzzzzzmtm7mzm00yd7z00s0y30g60000000000000000000000000000000000000000000000000000000000000000000000
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(0x010100000000000000008066400000000000805640),20);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(0x010100000000000000008066400000000000805640),20)
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(0x010100000000000000008066C00000000000805640),20);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(0x010100000000000000008066C00000000000805640),20)
|
||
bpbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(0x00000000014066800000000000C056800000000000),20);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(0x00000000014066800000000000C056800000000000),20)
|
||
pbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(0x0000000001C066800000000000C056800000000000),20);
|
||
ST_GEOHASH(ST_GEOMFROMWKB(0x0000000001C066800000000000C056800000000000),20)
|
||
00000000000000000000
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),"1");
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),"1")
|
||
s
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)')," 10 ");
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)')," 10 ")
|
||
s000000000
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),"+100");
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),"+100")
|
||
s000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||
SELECT ST_GEOHASH(NULL,100);
|
||
ST_GEOHASH(NULL,100)
|
||
NULL
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-0.0001 -0.0001)'),NULL);
|
||
ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-0.0001 -0.0001)'),NULL)
|
||
NULL
|
||
SELECT ST_GEOHASH(ST_DIFFERENCE(ST_GEOMFROMTEXT('POINT(180 90)'),ST_GEOMFROMTEXT('POINT(0 0)')),20);
|
||
ST_GEOHASH(ST_DIFFERENCE(ST_GEOMFROMTEXT('POINT(180 90)'),ST_GEOMFROMTEXT('POINT(0 0)')),20)
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(ST_DIFFERENCE(ST_GEOMFROMTEXT('POINT(-180 90)'),ST_GEOMFROMTEXT('MULTIPOINT(0 0,100 100)')),20);
|
||
ST_GEOHASH(ST_DIFFERENCE(ST_GEOMFROMTEXT('POINT(-180 90)'),ST_GEOMFROMTEXT('MULTIPOINT(0 0,100 100)')),20)
|
||
bpbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(ST_INTERSECTION(ST_GEOMFROMTEXT('POINT(180 -90)'),ST_GEOMFROMTEXT('POINT(180 -90)')),20);
|
||
ST_GEOHASH(ST_INTERSECTION(ST_GEOMFROMTEXT('POINT(180 -90)'),ST_GEOMFROMTEXT('POINT(180 -90)')),20)
|
||
pbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(ST_INTERSECTION(ST_GEOMFROMTEXT('POINT(-180 -90)'),ST_GEOMFROMTEXT('POINT(-180 -90)')),20);
|
||
ST_GEOHASH(ST_INTERSECTION(ST_GEOMFROMTEXT('POINT(-180 -90)'),ST_GEOMFROMTEXT('POINT(-180 -90)')),20)
|
||
00000000000000000000
|
||
# invalid inputs
|
||
SELECT ST_GEOHASH(181,0,10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(1000,90,10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180.0000000000001,-90,10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(-181,0,10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(-1000,90,10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(-180.0000000000001,-90,10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(0,91,10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,500,10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(-180,90.0000000000001,10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(0,-91,10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,-500,10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(-180,-90.0000000000001,10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,0);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(-180,90,-1);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,-90,-100);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(-180,-90,101);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(0,90,1000);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH("181",90,20);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH("-181",90,20);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,"91",20);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,"-91",20);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,"0");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,"-1");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,"-100");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,"101");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,"1000");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,"");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(180,90,"****");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH();
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_GEOHASH'
|
||
SELECT ST_GEOHASH(1);
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_GEOHASH'
|
||
SELECT ST_GEOHASH(1,2);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(-100,-45,100.1);
|
||
ERROR HY000: Incorrect type for argument geohash max length in function st_geohash.
|
||
SELECT ST_GEOHASH(, ,);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' ,)' at line 1
|
||
SELECT ST_GEOHASH(1,2,);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||
SELECT ST_GEOHASH(*,0,10);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*,0,10)' at line 1
|
||
SELECT ST_GEOHASH(0,*,10);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*,10)' at line 1
|
||
SELECT ST_GEOHASH(0,0,*);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*)' at line 1
|
||
SELECT ST_GEOHASH(a,90,10);
|
||
ERROR 42S22: Unknown column 'a' in 'field list'
|
||
SELECT ST_GEOHASH(180,p,10);
|
||
ERROR 42S22: Unknown column 'p' in 'field list'
|
||
SELECT ST_GEOHASH(180,90,z);
|
||
ERROR 42S22: Unknown column 'z' in 'field list'
|
||
SELECT ST_GEOHASH((CAST(180 AS DATE)),90,10);
|
||
ERROR HY000: Incorrect type for argument longitude in function st_geohash.
|
||
SELECT ST_GEOHASH(180,(CAST(90 AS DATE)),10);
|
||
ERROR HY000: Incorrect type for argument latitude in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(181 0)'),10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1000 90)'),10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180.0000000000001 -90)'),10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-181 0)'),10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1000 90)'),10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180.0000000000001 -90)'),10);
|
||
ERROR 22003: longitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 91)'),10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 500)'),10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 90.0000000000001)'),10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 -91)'),10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 -500)'),10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 -90.0000000000001)'),10);
|
||
ERROR 22003: latitude value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 90)'),0);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 -90)'),-1);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 90)'),-100);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-180 -90)'),101);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),10000);
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(180 90)'))),"0");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(180 -90)'))),"-1");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(-180 90)'))),"-100");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(-180 -90)'))),"101");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMWKB(ST_ASWKB(ST_GEOMFROMTEXT('POINT(0 0)'))),"10000");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)')," ");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),"***");
|
||
ERROR 22003: max geohash length value is out of range in 'st_geohash'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'));
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_GEOHASH'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT(),20);
|
||
ERROR 42000: Incorrect parameter count in the call to native function 'ST_GEOMFROMTEXT'
|
||
SELECT ST_GEOHASH((ST_GEOMFROMTEXT('POINT(0 0)'),);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||
SELECT ST_GEOHASH(,10);
|
||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '10)' at line 1
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(0 0)'),a);
|
||
ERROR 42S22: Unknown column 'a' in 'field list'
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('LINESTRING(0 0,10 10)'),10);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POLYGON((0 0,10 0,10 10,0 10,0 0))'),10);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('MULTIPOINT(0 0,10 10)'),10);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10),(20 20,30 30))'),10);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)))'),10);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0))'),10);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 90)'),20.0001);
|
||
ERROR HY000: Incorrect type for argument geohash max length in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 90)'),(CAST(10 AS DATE)));
|
||
ERROR HY000: Incorrect type for argument geohash max length in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 90)'),(CAST(10 AS BINARY)));
|
||
ERROR HY000: Incorrect type for argument geohash max length in function st_geohash.
|
||
SELECT ST_GEOHASH((CAST(10 AS BINARY)),20,1);
|
||
ERROR HY000: Incorrect type for argument longitude in function st_geohash.
|
||
SELECT ST_GEOHASH(10,(CAST(20 AS BINARY)),1);
|
||
ERROR HY000: Incorrect type for argument latitude in function st_geohash.
|
||
SELECT ST_GEOHASH((CAST(10 AS BINARY)),(CAST(20 AS BINARY)),1);
|
||
ERROR HY000: Incorrect type for argument longitude in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_INTERSECTION(ST_GEOMFROMTEXT('POINT(180 90)'),ST_GEOMFROMTEXT('POINT(1 1)')),20);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_UNION(ST_GEOMFROMTEXT('POINT(180 90)'),ST_GEOMFROMTEXT('POINT(-180 -90)')),20);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_DIFFERENCE(ST_GEOMFROMTEXT('POINT(180 90)'),ST_GEOMFROMTEXT('MULTIPOINT(0 0,180 90)')),20);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_SYMDIFFERENCE(ST_GEOMFROMTEXT('POINT(180 90)'),ST_GEOMFROMTEXT('POINT(0 0)')),20);
|
||
ERROR HY000: Incorrect type for argument point in function st_geohash.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT()'),20);
|
||
ERROR 22023: Invalid GIS data provided to function st_geometryfromtext.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1)'),20);
|
||
ERROR 22023: Invalid GIS data provided to function st_geometryfromtext.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1 a)'),20);
|
||
ERROR 22023: Invalid GIS data provided to function st_geometryfromtext.
|
||
SELECT ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180,90)'),20);
|
||
ERROR 22023: Invalid GIS data provided to function st_geometryfromtext.
|
||
#=============================================================
|
||
# ST_LONGFROMGEOHASH()
|
||
#=============================================================
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(180,90,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(180,90,20))
|
||
180
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(180,-90,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(180,-90,20))
|
||
180
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(-180,90,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(-180,90,20))
|
||
-180
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(-180,-90,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(-180,-90,20))
|
||
-180
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(180,0,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(180,0,20))
|
||
180
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(-180,0,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(-180,0,20))
|
||
-180
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(-0,0,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(-0,0,20))
|
||
0
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(0.10,90,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(0.10,90,20))
|
||
0.1
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(100,45,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(100,45,20))
|
||
100
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(179.999999,90,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(179.999999,90,20))
|
||
179.999999
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(-179.999999,0,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(-179.999999,0,20))
|
||
-179.999999
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(18*10,900/10,20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(18*10,900/10,20))
|
||
180
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 10)'),10));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 10)'),10))
|
||
100
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 10)'),10));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 10)'),10))
|
||
10
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-10 10)'),10));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-10 10)'),10))
|
||
-10
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.000 10)'),10));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.000 10)'),10))
|
||
1
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.000 10)'),10));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.000 10)'),10))
|
||
-1
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.00101 90)'),20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.00101 90)'),20))
|
||
1.00101
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.00101 90)'),20));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.00101 90)'),20))
|
||
-1.00101
|
||
SELECT ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(20 20)'),10));
|
||
ST_LONGFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(20 20)'),10))
|
||
20
|
||
#=============================================================
|
||
# ST_LATFROMGEOHASH()
|
||
#=============================================================
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(180,90,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(180,90,20))
|
||
90
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(180,-90,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(180,-90,20))
|
||
-90
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(-180,90,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(-180,90,20))
|
||
90
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(-180,-90,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(-180,-90,20))
|
||
-90
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(0,90,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(0,90,20))
|
||
90
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(0,-90,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(0,-90,20))
|
||
-90
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(0,-0,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(0,-0,20))
|
||
0
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(180,0.101,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(180,0.101,20))
|
||
0.101
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(100,45,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(100,45,20))
|
||
45
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(180,89.99999990,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(180,89.99999990,20))
|
||
89.9999999
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(0,89.999999,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(0,89.999999,20))
|
||
89.999999
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(18*10,900/10,20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(18*10,900/10,20))
|
||
90
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 50)'),10));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 50)'),10))
|
||
50
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 10)'),10));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 10)'),10))
|
||
10
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 -10)'),10));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 -10)'),10))
|
||
-10
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 1.000)'),10));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 1.000)'),10))
|
||
1
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 -1.0000)'),10));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 -1.0000)'),10))
|
||
-1
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 1.00101)'),20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(180 1.00101)'),20))
|
||
1.00101
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-100 -1.00101)'),20));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-100 -1.00101)'),20))
|
||
-1.00101
|
||
SELECT ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(20 -20)'),10));
|
||
ST_LATFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(20 -20)'),10))
|
||
-20
|
||
#=============================================================
|
||
# ST_POINTFROMGEOHASH()
|
||
#=============================================================
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,90,20),10))
|
||
POINT(180 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,-90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,-90,20),10))
|
||
POINT(180 -90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-180,90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-180,90,20),10))
|
||
POINT(-180 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-180,-90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-180,-90,20),10))
|
||
POINT(-180 -90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,0,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,0,20),10))
|
||
POINT(180 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-180,0,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-180,0,20),10))
|
||
POINT(-180 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,90,20),10))
|
||
POINT(0 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,-90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,-90,20),10))
|
||
POINT(0 -90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,0,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,0,20),10))
|
||
POINT(0 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-0,0,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-0,0,20),10))
|
||
POINT(0 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,-0,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,-0,20),10))
|
||
POINT(0 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0.10,90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0.10,90,20),10))
|
||
POINT(0.1 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(100,45,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(100,45,20),10))
|
||
POINT(100 45)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(179.999999,90,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(179.999999,90,20),10))
|
||
POINT(179.999999 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-179.999999,0,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(-179.999999,0,20),10))
|
||
POINT(-179.999999 0)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,89.999999,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(180,89.999999,20),10))
|
||
POINT(180 89.999999)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,-89.999999,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(0,-89.999999,20),10))
|
||
POINT(0 -89.999999)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(18*10,900/10,20),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(18*10,900/10,20),10))
|
||
POINT(180 90)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 50)'),10),10));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(100 50)'),10),10))
|
||
POINT(100 50)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 10)'),10),100));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(10 10)'),10),100))
|
||
POINT(10 10)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-10 10)'),10),1000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-10 10)'),10),1000))
|
||
POINT(-10 10)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.000 1.00010)'),10),10000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.000 1.00010)'),10),10000))
|
||
POINT(1 1.0001)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.000 -1.1010)'),10),100000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.000 -1.1010)'),10),100000))
|
||
POINT(-1 -1.101)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.00101 1.000)'),10),1000000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(1.00101 1.000)'),10),1000000))
|
||
POINT(1.00101 1)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.00101 -1.0000)'),20),10000000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(-1.00101 -1.0000)'),20),10000000))
|
||
POINT(-1.00101 -1)
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(20 20)'),10),100000000));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(ST_GEOHASH(ST_GEOMFROMTEXT('POINT(20 20)'),10),100000000))
|
||
POINT(20 20)
|
||
#=============================================================
|
||
# ST_GEOHASH()
|
||
#=============================================================
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("upbp",10),4);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("upbp",10),4)
|
||
upbp
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("h000",10),8);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("h000",10),8)
|
||
h0000000
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("s000",10),10);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("s000",10),10)
|
||
s000000000
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("zzzzm",10),10);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("zzzzm",10),10)
|
||
zzzzmtz1my
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("pbpbt",10),10);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("pbpbt",10),10)
|
||
pbpbtdpntc
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("bpbp6",10),10);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("bpbp6",10),10)
|
||
bpbp6mbc6n
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("0000d",10),10);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("0000d",10),10)
|
||
0000d60yd1
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("xbpbpbpbp",10),9);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("xbpbpbpbp",10),9)
|
||
xbpbpbpbp
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("800000000",10),12);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("800000000",10),12)
|
||
800000000000
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz",10),20);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz",10),20)
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("00000000000000000000",10),20);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("00000000000000000000",10),20)
|
||
00000000000000000000
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb",10),20);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb",10),20)
|
||
pbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(ST_POINTFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp",10),20);
|
||
ST_GEOHASH(ST_POINTFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp",10),20)
|
||
bpbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20)
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("00000000000000000000"),ST_LATFROMGEOHASH("00000000000000000000"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("00000000000000000000"),ST_LATFROMGEOHASH("00000000000000000000"),20)
|
||
00000000000000000000
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("00000000000000000000"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("00000000000000000000"),20)
|
||
pbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("00000000000000000000"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("00000000000000000000"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20)
|
||
bpbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20)
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb"),20)
|
||
pbpbpbpbpbpbpbpbpbpb
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),ST_LATFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp"),20)
|
||
zzzzzzzzzzzzzzzzzzzz
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp"),ST_LATFROMGEOHASH("zzzzzzzzzzzzzzzzzzzz"),20)
|
||
bpbpbpbpbpbpbpbpbpbp
|
||
SELECT ST_GEOHASH(ST_LONGFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp"),ST_LATFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb"),20);
|
||
ST_GEOHASH(ST_LONGFROMGEOHASH("bpbpbpbpbpbpbpbpbpbp"),ST_LATFROMGEOHASH("pbpbpbpbpbpbpbpbpbpb"),20)
|
||
00000000000000000000
|
||
SELECT
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_persian_ci);
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_persian_ci)
|
||
-179.55743439816956
|
||
SELECT
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_czech_ci);
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_czech_ci)
|
||
-179.55743439816956
|
||
SELECT
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_unicode_ci);
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_unicode_ci)
|
||
-179.55743439816956
|
||
SELECT
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_hungarian_ci);
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_hungarian_ci)
|
||
-179.55743439816956
|
||
SELECT
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET gb18030) COLLATE gb18030_unicode_520_ci);
|
||
ST_LONGFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET gb18030) COLLATE gb18030_unicode_520_ci)
|
||
-179.55743439816956
|
||
SELECT
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_persian_ci);
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_persian_ci)
|
||
-82.77450549262497
|
||
SELECT
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_czech_ci);
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_czech_ci)
|
||
-82.77450549262497
|
||
SELECT
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_unicode_ci);
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_unicode_ci)
|
||
-82.77450549262497
|
||
SELECT
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_hungarian_ci);
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_hungarian_ci)
|
||
-82.77450549262497
|
||
SELECT
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET gb18030) COLLATE gb18030_unicode_520_ci);
|
||
ST_LATFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET gb18030) COLLATE gb18030_unicode_520_ci)
|
||
-82.77450549262497
|
||
SELECT
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_persian_ci,
|
||
4326
|
||
)
|
||
);
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_persian_ci,
|
||
4326
|
||
)
|
||
)
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_czech_ci,
|
||
4326
|
||
)
|
||
);
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_czech_ci,
|
||
4326
|
||
)
|
||
)
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_unicode_ci,
|
||
4326
|
||
)
|
||
);
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_unicode_ci,
|
||
4326
|
||
)
|
||
)
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_hungarian_ci,
|
||
4326
|
||
)
|
||
);
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET utf8) COLLATE utf8_hungarian_ci,
|
||
4326
|
||
)
|
||
)
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
SELECT
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET gb18030) COLLATE gb18030_unicode_520_ci,
|
||
4326
|
||
)
|
||
);
|
||
ST_ASTEXT(
|
||
ST_POINTFROMGEOHASH(
|
||
CAST("0123456789bcdefghjkmnpqrstuvwxyz0123456789BCDEFGHJKMNPQRSTUVWXYZ"
|
||
AS CHAR CHARACTER SET gb18030) COLLATE gb18030_unicode_520_ci,
|
||
4326
|
||
)
|
||
)
|
||
POINT(-179.55743439816956 -82.77450549262497)
|
||
CREATE TABLE t1 (val DOUBLE);
|
||
INSERT INTO t1 (val) VALUES (12.2);
|
||
SELECT val INTO @double FROM t1;
|
||
DROP TABLE t1;
|
||
SET @null = NULL;
|
||
SET @geohash = "01bbgcee";
|
||
PREPARE stmt FROM "SELECT ST_LONGFROMGEOHASH(?)";
|
||
EXECUTE stmt USING @geohash;
|
||
ST_LONGFROMGEOHASH(?)
|
||
-178.7755
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_LONGFROMGEOHASH(@geohash);
|
||
ST_LONGFROMGEOHASH(@geohash)
|
||
-178.7755
|
||
SELECT ST_LONGFROMGEOHASH(@null);
|
||
ST_LONGFROMGEOHASH(@null)
|
||
NULL
|
||
PREPARE stmt FROM "SELECT ST_LATFROMGEOHASH(?)";
|
||
EXECUTE stmt USING @geohash;
|
||
ST_LATFROMGEOHASH(?)
|
||
-80.0156
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_LATFROMGEOHASH(@geohash);
|
||
ST_LATFROMGEOHASH(@geohash)
|
||
-80.0156
|
||
SELECT ST_LATFROMGEOHASH(@null);
|
||
ST_LATFROMGEOHASH(@null)
|
||
NULL
|
||
PREPARE stmt FROM "SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(?, 1))";
|
||
EXECUTE stmt USING @geohash;
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(?, 1))
|
||
POINT(-178.7755 -80.0156)
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(@geohash, 1));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH(@geohash, 1))
|
||
POINT(-178.7755 -80.0156)
|
||
SET @srid = 4326;
|
||
PREPARE stmt FROM "SELECT ST_ASTEXT(ST_POINTFROMGEOHASH(\"00\", ?))";
|
||
EXECUTE stmt USING @srid;
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("00", ?))
|
||
POINT(-174 -87)
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_ASTEXT(ST_POINTFROMGEOHASH("00", @srid));
|
||
ST_ASTEXT(ST_POINTFROMGEOHASH("00", @srid))
|
||
POINT(-174 -87)
|
||
SET @maxlen = 3;
|
||
PREPARE stmt FROM "SELECT ST_GeoHash(POINT(10, 10), ?)";
|
||
EXECUTE stmt USING @maxlen;
|
||
ST_GeoHash(POINT(10, 10), ?)
|
||
s1z
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_GeoHash(POINT(10, 10), @maxlen);
|
||
ST_GeoHash(POINT(10, 10), @maxlen)
|
||
s1z
|
||
SELECT ST_GeoHash(POINT(10, 10), @null);
|
||
ST_GeoHash(POINT(10, 10), @null)
|
||
NULL
|
||
SET @point = POINT(10, 10);
|
||
PREPARE stmt FROM "SELECT ST_GeoHash(?, 10)";
|
||
EXECUTE stmt USING @point;
|
||
ST_GeoHash(?, 10)
|
||
s1z0gs3y0z
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_GeoHash(@point, 10);
|
||
ST_GeoHash(@point, 10)
|
||
s1z0gs3y0z
|
||
SELECT ST_GeoHash(@null, 10);
|
||
ST_GeoHash(@null, 10)
|
||
NULL
|
||
SET @long = 22.0311;
|
||
PREPARE stmt FROM "SELECT ST_GeoHash(?, 10, 10)";
|
||
EXECUTE stmt USING @long;
|
||
ST_GeoHash(?, 10, 10)
|
||
s3z8vk6w1z
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_GeoHash(@long, 10, 10);
|
||
ST_GeoHash(@long, 10, 10)
|
||
s3z8vk6w1z
|
||
SELECT ST_GeoHash(@null, 10, 10);
|
||
ST_GeoHash(@null, 10, 10)
|
||
NULL
|
||
SET @lat = -54.123;
|
||
PREPARE stmt FROM "SELECT ST_GeoHash(10, ?, 10)";
|
||
EXECUTE stmt USING @lat;
|
||
ST_GeoHash(10, ?, 10)
|
||
hnrh5e1y8v
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_GeoHash(10, @lat, 10);
|
||
ST_GeoHash(10, @lat, 10)
|
||
hnrh5e1y8v
|
||
SELECT ST_GeoHash(10, @null, 10);
|
||
ST_GeoHash(10, @null, 10)
|
||
NULL
|
||
PREPARE stmt FROM "SELECT ST_GeoHash(10, 10, ?)";
|
||
EXECUTE stmt USING @maxlen;
|
||
ST_GeoHash(10, 10, ?)
|
||
s1z
|
||
DEALLOCATE PREPARE stmt;
|
||
SELECT ST_GeoHash(10, 10, @maxlen);
|
||
ST_GeoHash(10, 10, @maxlen)
|
||
s1z
|
||
SELECT ST_GeoHash(@double, @double, 10);
|
||
ST_GeoHash(@double, @double, 10)
|
||
s60tmsgy0s
|
||
SELECT ST_GeoHash(POINT(10, 10), @double);
|
||
ERROR HY000: Incorrect type for argument geohash max length in function st_geohash.
|
||
SELECT ST_POINTFROMGEOHASH("00", @double);
|
||
ERROR HY000: Incorrect type for argument SRID in function st_pointfromgeohash.
|
||
DROP TABLE IF EXISTS t1;
|
||
Warnings:
|
||
Note 1051 Unknown table 'test.t1'
|
||
CREATE TABLE t1 (a VARCHAR(255));
|
||
INSERT INTO t1 (a) VALUES (' ');
|
||
SELECT ST_LONGFROMGEOHASH(a) FROM t1;
|
||
ERROR HY000: Incorrect geohash value: ' ' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH(a) FROM t1;
|
||
ERROR HY000: Incorrect geohash value: ' ' for function ST_LATFROMGEOHASH
|
||
SELECT ST_POINTFROMGEOHASH(a, 1) FROM t1;
|
||
ERROR HY000: Incorrect geohash value: ' ' for function st_pointfromgeohash
|
||
DELETE FROM t1;
|
||
INSERT INTO t1 VALUES ('swpwwwwww'), ('guqtjvooguqtjvoo');
|
||
SELECT ST_LONGFROMGEOHASH(a) FROM t1;
|
||
ERROR HY000: Incorrect geohash value: 'guqtjvooguqtjvoo' for function ST_LONGFROMGEOHASH
|
||
SELECT ST_LATFROMGEOHASH(a) FROM t1;
|
||
ERROR HY000: Incorrect geohash value: 'guqtjvooguqtjvoo' for function ST_LATFROMGEOHASH
|
||
SELECT ST_POINTFROMGEOHASH(a, 1) FROM t1;
|
||
ERROR HY000: Incorrect geohash value: 'guqtjvooguqtjvoo' for function st_pointfromgeohash
|
||
# Clean up
|
||
DROP TABLE geohashes;
|
||
DROP TABLE t1;
|
||
#
|
||
# Bug#22165582 ST_*FROMGEOHASH ROUNDS INCORRECTLY
|
||
#
|
||
SELECT ST_GeoHash(ST_PointFromGeoHash('xkcd', 0), 4);
|
||
ST_GeoHash(ST_PointFromGeoHash('xkcd', 0), 4)
|
||
xkcd
|
||
SELECT ST_LongFromGeoHash('xkcd');
|
||
ST_LongFromGeoHash('xkcd')
|
||
148.5
|
||
SELECT ST_LatFromGeoHash('xkcd');
|
||
ST_LatFromGeoHash('xkcd')
|
||
27.2
|
||
SELECT ST_GeoHash(ST_PointFromGeoHash('ebrb', 0), 4);
|
||
ST_GeoHash(ST_PointFromGeoHash('ebrb', 0), 4)
|
||
s020
|
||
SELECT ST_LatFromGeoHash('m7s9pyctu9bbwqkgbw5x6vutzkztd9szjh86gmz9w9nsz6792d');
|
||
ST_LatFromGeoHash('m7s9pyctu9bbwqkgbw5x6vutzkztd9szjh86gmz9w9nsz6792d')
|
||
-25.098643334722453
|
||
#
|
||
# Bug#25912557 ST_LATFROMGEOHASH/ST_LONGFROMGEOHASH ODD INPUT TYPE
|
||
# REQUIREMENT
|
||
#
|
||
CREATE TABLE t1 (col1 CHAR(4));
|
||
INSERT INTO t1 VALUES ('bbbb');
|
||
SELECT ST_LatFromGeohash(col1) FROM t1;
|
||
ST_LatFromGeohash(col1)
|
||
49.3
|
||
SELECT ST_LongFromGeohash(col1) FROM t1;
|
||
ST_LongFromGeohash(col1)
|
||
-145
|
||
SELECT ST_AsText(ST_PointFromGeohash(col1, 4326)) FROM t1;
|
||
ST_AsText(ST_PointFromGeohash(col1, 4326))
|
||
POINT(-145 49.3)
|
||
DROP TABLE t1;
|