move test folder

This commit is contained in:
wangzelin.wzl
2022-08-12 19:29:16 +08:00
parent 29e0cb7475
commit d5269307a9
419 changed files with 275972 additions and 77007 deletions

View File

@ -0,0 +1,216 @@
alter system flush plan cache global;
select 3;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 3 3 8 1 1 N 32897 0 63
3
3
select 3.4;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 3.4 3.4 246 4 3 N 32897 1 63
3.4
3.4
select 3.000000000000000000000000001;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 3.000000000000000000000000001 3.000000000000000000000000001 246 30 29 N 32897 27 63
3.000000000000000000000000001
3.000000000000000000000000001
select -3;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def -3 -3 8 1 2 N 32897 0 63
-3
-3
select -3.4;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def -3.4 -3.4 246 4 4 N 32897 1 63
-3.4
-3.4
select -3.000000000000000000000000001;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def -3.000000000000000000000000001 -3.000000000000000000000000001 246 30 30 N 32897 27 63
-3.000000000000000000000000001
-3.000000000000000000000000001
select 1, 11, 111, 1111, 11111, 111111, 1111111, 11111111, 111111111, 1111111111,11111111111, 111111111111;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 1 1 8 1 1 N 32897 0 63
def 11 11 8 2 2 N 32897 0 63
def 111 111 8 3 3 N 32897 0 63
def 1111 1111 8 4 4 N 32897 0 63
def 11111 11111 8 5 5 N 32897 0 63
def 111111 111111 8 6 6 N 32897 0 63
def 1111111 1111111 8 7 7 N 32897 0 63
def 11111111 11111111 8 8 8 N 32897 0 63
def 111111111 111111111 8 9 9 N 32897 0 63
def 1111111111 1111111111 8 10 10 N 32897 0 63
def 11111111111 11111111111 8 11 11 N 32897 0 63
def 111111111111 111111111111 8 12 12 N 32897 0 63
1 11 111 1111 11111 111111 1111111 11111111 111111111 1111111111 11111111111 111111111111
1 11 111 1111 11111 111111 1111111 11111111 111111111 1111111111 11111111111 111111111111
select TIMESTAMP '2012-12-31 11:30:45', TIMESTAMP '2012-12-31 11:30:45.1', TIMESTAMP '2012-12-31 11:30:45.11', TIMESTAMP '2012-12-31 11:30:45.111', TIMESTAMP '2012-12-31 11:30:45.1111', TIMESTAMP '2012-12-31 11:30:45.11111', TIMESTAMP '2012-12-31 11:30:45.111111';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def TIMESTAMP '2012-12-31 11:30:45' TIMESTAMP '2012-12-31 11:30:45' 12 19 19 N 129 0 63
def TIMESTAMP '2012-12-31 11:30:45.1' TIMESTAMP '2012-12-31 11:30:45.1' 12 21 21 N 129 1 63
def TIMESTAMP '2012-12-31 11:30:45.11' TIMESTAMP '2012-12-31 11:30:45.11' 12 22 22 N 129 2 63
def TIMESTAMP '2012-12-31 11:30:45.111' TIMESTAMP '2012-12-31 11:30:45.111' 12 23 23 N 129 3 63
def TIMESTAMP '2012-12-31 11:30:45.1111' TIMESTAMP '2012-12-31 11:30:45.1111' 12 24 24 N 129 4 63
def TIMESTAMP '2012-12-31 11:30:45.11111' TIMESTAMP '2012-12-31 11:30:45.11111' 12 25 25 N 129 5 63
def TIMESTAMP '2012-12-31 11:30:45.111111' TIMESTAMP '2012-12-31 11:30:45.111111' 12 26 26 N 129 6 63
TIMESTAMP '2012-12-31 11:30:45' TIMESTAMP '2012-12-31 11:30:45.1' TIMESTAMP '2012-12-31 11:30:45.11' TIMESTAMP '2012-12-31 11:30:45.111' TIMESTAMP '2012-12-31 11:30:45.1111' TIMESTAMP '2012-12-31 11:30:45.11111' TIMESTAMP '2012-12-31 11:30:45.111111'
2012-12-31 11:30:45 2012-12-31 11:30:45.1 2012-12-31 11:30:45.11 2012-12-31 11:30:45.111 2012-12-31 11:30:45.1111 2012-12-31 11:30:45.11111 2012-12-31 11:30:45.111111
select TIME '11:30:45', TIME '11:30:45.111111', TIME '11:30:45.11111', TIME '11:30:45.1111', TIME '11:30:45.111', TIME '11:30:45.11', TIME '11:30:45.1';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def TIME '11:30:45' TIME '11:30:45' 11 10 8 N 129 0 63
def TIME '11:30:45.111111' TIME '11:30:45.111111' 11 17 15 N 129 6 63
def TIME '11:30:45.11111' TIME '11:30:45.11111' 11 16 14 N 129 5 63
def TIME '11:30:45.1111' TIME '11:30:45.1111' 11 15 13 N 129 4 63
def TIME '11:30:45.111' TIME '11:30:45.111' 11 14 12 N 129 3 63
def TIME '11:30:45.11' TIME '11:30:45.11' 11 13 11 N 129 2 63
def TIME '11:30:45.1' TIME '11:30:45.1' 11 12 10 N 129 1 63
TIME '11:30:45' TIME '11:30:45.111111' TIME '11:30:45.11111' TIME '11:30:45.1111' TIME '11:30:45.111' TIME '11:30:45.11' TIME '11:30:45.1'
11:30:45 11:30:45.111111 11:30:45.11111 11:30:45.1111 11:30:45.111 11:30:45.11 11:30:45.1
select date '1998-09-09';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date '1998-09-09' date '1998-09-09' 10 10 10 N 129 0 63
date '1998-09-09'
1998-09-09
select TIMESTAMP '2012-2-1 11:30:45';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def TIMESTAMP '2012-2-1 11:30:45' TIMESTAMP '2012-2-1 11:30:45' 12 19 19 N 129 0 63
TIMESTAMP '2012-2-1 11:30:45'
2012-02-01 11:30:45
select TIME '11:5:45';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def TIME '11:5:45' TIME '11:5:45' 11 10 8 N 129 0 63
TIME '11:5:45'
11:05:45
select date '1998-9-9';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date '1998-9-9' date '1998-9-9' 10 10 10 N 129 0 63
date '1998-9-9'
1998-09-09
SELECT X'4D7953514C';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def X'4D7953514C' X'4D7953514C' 253 5 5 N 129 31 63
X'4D7953514C'
MySQL
SELECT 0x5061756c;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 0x5061756c 0x5061756c 253 5 4 N 129 31 63
0x5061756c
Paul
SELECT 0x636174;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 0x636174 0x636174 253 5 3 N 129 31 63
0x636174
cat
SELECT TRUE, true, FALSE, false;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def TRUE TRUE 1 1 1 N 32897 0 63
def true true 1 1 1 N 32897 0 63
def FALSE FALSE 1 1 1 N 32897 0 63
def false false 1 1 1 N 32897 0 63
TRUE true FALSE false
1 1 0 0
select 'abcde';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abcde abcde 253 20 5 N 1 31 45
abcde
abcde
select '我爱你';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 我爱你 我爱你 253 20 9 N 1 31 45
我爱你
我爱你
select '我e爱a你t';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 我e爱a你t 我e爱a你t 253 20 12 N 1 31 45
我e爱a你t
我e爱a你t
select '';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 253 20 0 N 1 31 45
select ' ';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 253 20 1 N 1 31 45
select '0x10';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 0x10 0x10 253 20 4 N 1 31 45
0x10
0x10
select '0810';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 0810 0810 253 20 4 N 1 31 45
0810
0810
drop table if exists t1;
create table t1(f1 datetime(6));
insert into t1 values('01-01-01'),('02-02-02'),('01-01-01'),('02-02-02');
set @bug28261='';
select if(@bug28261 = f1, '', @bug28261:= f1) from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def if(@bug28261 = f1, '', @bug28261:= f1) if(@bug28261 = f1, '', @bug28261:= f1) 253 104 26 Y 0 31 45
if(@bug28261 = f1, '', @bug28261:= f1)
2001-01-01 00:00:00.000000
2002-02-02 00:00:00.000000
2001-01-01 00:00:00.000000
2002-02-02 00:00:00.000000
drop table t1;
drop table if exists tt;
CREATE TABLE if not exists tt(aa int);
select count(*) as cnt from tt a ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def cnt cnt 8 20 1 Y 32896 0 63
cnt
0
select sum(cnt) from(select count(*) as cnt from tt a ) c;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def sum(cnt) sum(cnt) 246 21 1 Y 32896 0 63
sum(cnt)
0
drop table if exists obright;
create table obright(row_id bigint, dec3 decimal(16,6));
select dec3 mod (case when row_id > 0 then dec3 else 1 end) from obright;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def dec3 mod (case when row_id > 0 then dec3 else 1 end) dec3 mod (case when row_id > 0 then dec3 else 1 end) 246 28 0 Y 32896 6 63
dec3 mod (case when row_id > 0 then dec3 else 1 end)
select field(0,'a');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def field(0,'a') field(0,'a') 8 3 1 Y 32896 0 63
field(0,'a')
1
show warnings;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def subquery_alias subquery_alias Level Level 253 128 7 N 1 31 45
def subquery_alias subquery_alias Code Code 8 20 4 N 32897 0 63
def subquery_alias subquery_alias Message Message 253 2048 37 N 1 31 45
Level Code Message
Warning 1292 Truncated incorrect DOUBLE value: 'a'
select field(1,'a', 'b');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def field(1,'a', 'b') field(1,'a', 'b') 8 3 1 Y 32896 0 63
field(1,'a', 'b')
0
show warnings;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def subquery_alias subquery_alias Level Level 253 128 7 N 1 31 45
def subquery_alias subquery_alias Code Code 8 20 4 N 32897 0 63
def subquery_alias subquery_alias Message Message 253 2048 37 N 1 31 45
Level Code Message
Warning 1292 Truncated incorrect DOUBLE value: 'a'
Warning 1292 Truncated incorrect DOUBLE value: 'b'
select field(3,'a', 2, 'c');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def field(3,'a', 2, 'c') field(3,'a', 2, 'c') 8 3 1 Y 32896 0 63
field(3,'a', 2, 'c')
0
show warnings;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def subquery_alias subquery_alias Level Level 253 128 7 N 1 31 45
def subquery_alias subquery_alias Code Code 8 20 4 N 32897 0 63
def subquery_alias subquery_alias Message Message 253 2048 37 N 1 31 45
Level Code Message
Warning 1292 Truncated incorrect DOUBLE value: 'a'
Warning 1292 Truncated incorrect DOUBLE value: 'c'

View File

@ -0,0 +1,186 @@
alter system flush plan cache global;
drop table if exists tt;
create table tt(c tinyint);
select avg(c) from tt;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def avg(c) avg(c) 246 10 0 Y 32896 4 63
avg(c)
NULL
drop table if exists tt;
create table tt(c tinyint);
select 2*avg(c) from tt;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 2*avg(c) 2*avg(c) 246 11 0 Y 32896 4 63
2*avg(c)
NULL
drop table if exists tt;
create table tt(c tinyint);
insert into tt values(19),(20);
select 2*avg(c) from tt;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 2*avg(c) 2*avg(c) 246 11 7 Y 32896 4 63
2*avg(c)
39.0000
select str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 1 str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 1 246 21 14 Y 32896 0 63
str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 1
19700102000001
select str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 10000;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 10000 str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 10000 246 21 14 Y 32896 0 63
str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 10000
19700102010000
select str_to_date('1970-01-02',null) + 100;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02',null) + 100 str_to_date('1970-01-02',null) + 100 246 28 0 Y 32896 6 63
str_to_date('1970-01-02',null) + 100
NULL
select str_to_date('1970-01-02','null') + 100;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02','null') + 100 str_to_date('1970-01-02','null') + 100 8 11 0 Y 32896 0 63
str_to_date('1970-01-02','null') + 100
NULL
Warnings:
Warning 1411 Incorrect datetime value: '1970-01-02' for function str_to_date
select str_to_date('1970-01-02',0)+ 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02',0)+ 1 str_to_date('1970-01-02',0)+ 1 246 21 0 Y 32896 0 63
str_to_date('1970-01-02',0)+ 1
NULL
Warnings:
Warning 1411 Incorrect datetime value: '1970-01-02' for function str_to_date
select str_to_date('1970-01-02', 23) +10;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02', 23) +10 str_to_date('1970-01-02', 23) +10 246 21 0 Y 32896 0 63
str_to_date('1970-01-02', 23) +10
NULL
Warnings:
Warning 1411 Incorrect datetime value: '1970-01-02' for function str_to_date
select str_to_date('1970-01-02 12:23:32','%Y-%m-%d %H:%i:%s')+ 10000;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02 12:23:32','%Y-%m-%d %H:%i:%s')+ 10000 str_to_date('1970-01-02 12:23:32','%Y-%m-%d %H:%i:%s')+ 10000 246 21 14 Y 32896 0 63
str_to_date('1970-01-02 12:23:32','%Y-%m-%d %H:%i:%s')+ 10000
19700102132332
select str_to_date('1970-01-02 12:23:32','%Y-%m-%d')+ 10000;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-01-02 12:23:32','%Y-%m-%d')+ 10000 str_to_date('1970-01-02 12:23:32','%Y-%m-%d')+ 10000 8 11 8 Y 32896 0 63
str_to_date('1970-01-02 12:23:32','%Y-%m-%d')+ 10000
19710102
select str_to_date('12:23:32','%H:%i:%s')+ 10000;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('12:23:32','%H:%i:%s')+ 10000 str_to_date('12:23:32','%H:%i:%s')+ 10000 246 12 6 Y 32896 0 63
str_to_date('12:23:32','%H:%i:%s')+ 10000
132332
select str_to_date('12:23:32',10)+ 10000;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('12:23:32',10)+ 10000 str_to_date('12:23:32',10)+ 10000 246 21 0 Y 32896 0 63
str_to_date('12:23:32',10)+ 10000
NULL
Warnings:
Warning 1411 Incorrect datetime value: '12:23:32' for function str_to_date
drop table if exists t1, t2, t3, t3k;
CREATE TABLE t1 (EMPNUM INT);
INSERT INTO t1 VALUES (0), (2);
CREATE TABLE t2 (EMPNUM DECIMAL (4, 2));
INSERT INTO t2 VALUES (0.0), (9.0);
SELECT IFNULL(t2.EMPNUM,t1.EMPNUM) AS CEMPNUM
FROM t1 LEFT JOIN t2 ON t1.EMPNUM=t2.EMPNUM;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def CEMPNUM CEMPNUM 246 6 4 Y 32896 2 63
CEMPNUM
0.00
2.00
create table t3(a int, b decimal, c varchar(10));
select ifnull(0, 0.0);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ifnull(0, 0.0) ifnull(0, 0.0) 246 4 3 Y 32896 1 63
ifnull(0, 0.0)
0.0
insert into t3 values(0, 2.4, "123");
select ifnull(a, b), ifnull(a, c) from t3;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ifnull(a, b) ifnull(a, b) 246 11 1 Y 32896 0 63
def ifnull(a, c) ifnull(a, c) 253 44 1 Y 0 31 45
ifnull(a, b) ifnull(a, c)
0 0
drop table t1,t2, t3;
create table t3k(c1 timestamp(6), c2 datetime(5), c3 timestamp(3), c4 datetime(5), c5 datetime(2));
select UNIX_TIMESTAMP(c1), UNIX_TIMESTAMP(c2), UNIX_TIMESTAMP(c3), UNIX_TIMESTAMP(c4), UNIX_TIMESTAMP(c5) from t3k;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def UNIX_TIMESTAMP(c1) UNIX_TIMESTAMP(c1) 246 20 0 Y 32896 6 63
def UNIX_TIMESTAMP(c2) UNIX_TIMESTAMP(c2) 246 19 0 Y 32896 5 63
def UNIX_TIMESTAMP(c3) UNIX_TIMESTAMP(c3) 246 17 0 Y 32896 3 63
def UNIX_TIMESTAMP(c4) UNIX_TIMESTAMP(c4) 246 19 0 Y 32896 5 63
def UNIX_TIMESTAMP(c5) UNIX_TIMESTAMP(c5) 246 16 0 Y 32896 2 63
UNIX_TIMESTAMP(c1) UNIX_TIMESTAMP(c2) UNIX_TIMESTAMP(c3) UNIX_TIMESTAMP(c4) UNIX_TIMESTAMP(c5)
drop table t3k;
drop table if exists t1, t2, t3, t3k;
drop view if exists v1;
CREATE TABLE t1 (a DATETIME NOT NULL);
INSERT INTO t1 VALUES ('2009-09-20 07:32:39.06');
INSERT INTO t1 VALUES ('0000-00-00 00:00:00.00');
CREATE VIEW v1 AS SELECT * FROM t1;
SELECT CAST(UNIX_TIMESTAMP(a) AS DECIMAL(25,3)) AS c1 FROM v1 ORDER BY 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def c1 c1 246 27 14 Y 32896 3 63
c1
0.000
1253403159.000
CREATE TABLE t2 (a VARCHAR(32) NOT NULL);
INSERT INTO t2 VALUES ('a');
SELECT 1 FROM t2 GROUP BY @a:=UNIX_TIMESTAMP(a);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 1 1 8 1 1 N 32897 0 63
1
1
SELECT a, UNIX_TIMESTAMP(a), UNIX_TIMESTAMP('a') FROM t2;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t2 t2 a a 253 128 1 N 1 31 45
def UNIX_TIMESTAMP(a) UNIX_TIMESTAMP(a) 246 20 8 Y 32896 6 63
def UNIX_TIMESTAMP('a') UNIX_TIMESTAMP('a') 246 20 8 Y 32896 6 63
a UNIX_TIMESTAMP(a) UNIX_TIMESTAMP('a')
a 0.000000 0.000000
SELECT a, UNIX_TIMESTAMP(a), UNIX_TIMESTAMP('5000-01-01 00:00:00') FROM t2;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t2 t2 a a 253 128 1 N 1 31 45
def UNIX_TIMESTAMP(a) UNIX_TIMESTAMP(a) 246 20 8 Y 32896 6 63
def UNIX_TIMESTAMP('5000-01-01 00:00:00') UNIX_TIMESTAMP('5000-01-01 00:00:00') 8 12 11 Y 32896 0 63
a UNIX_TIMESTAMP(a) UNIX_TIMESTAMP('5000-01-01 00:00:00')
a 0.000000 95617555200
create table tbl1(a datetime(5),b date,c timestamp, d double);
set time_zone='-3:00';
insert into tbl1 values("2010-01-01 11:22:33","2010-10-01","2010-01-01 11:22:33",3302747.4167);
insert into tbl1 values(20100101112233,20101001,20100101112233,3302747.4167);
set time_zone='+4:00';
select UNIX_TIMESTAMP(a),UNIX_TIMESTAMP(b),UNIX_TIMESTAMP(c),UNIX_TIMESTAMP(d) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def UNIX_TIMESTAMP(a) UNIX_TIMESTAMP(a) 246 19 16 Y 32896 5 63
def UNIX_TIMESTAMP(b) UNIX_TIMESTAMP(b) 8 12 10 Y 32896 0 63
def UNIX_TIMESTAMP(c) UNIX_TIMESTAMP(c) 8 12 10 Y 32896 0 63
def UNIX_TIMESTAMP(d) UNIX_TIMESTAMP(d) 246 20 8 Y 32896 6 63
UNIX_TIMESTAMP(a) UNIX_TIMESTAMP(b) UNIX_TIMESTAMP(c) UNIX_TIMESTAMP(d)
1262330553.00000 1285876800 1262355753 0.000000
1262330553.00000 1285876800 1262355753 0.000000
select UNIX_TIMESTAMP(1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def UNIX_TIMESTAMP(1) UNIX_TIMESTAMP(1) 8 12 1 Y 32896 0 63
UNIX_TIMESTAMP(1)
0
select UNIX_TIMESTAMP("1");
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def UNIX_TIMESTAMP("1") UNIX_TIMESTAMP("1") 246 20 8 Y 32896 6 63
UNIX_TIMESTAMP("1")
0.000000
select UNIX_TIMESTAMP("2010-01-01 11:22:33");
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def UNIX_TIMESTAMP("2010-01-01 11:22:33") UNIX_TIMESTAMP("2010-01-01 11:22:33") 8 12 10 Y 32896 0 63
UNIX_TIMESTAMP("2010-01-01 11:22:33")
1262330553
select UNIX_TIMESTAMP(20100101112233);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def UNIX_TIMESTAMP(20100101112233) UNIX_TIMESTAMP(20100101112233) 8 12 10 Y 32896 0 63
UNIX_TIMESTAMP(20100101112233)
1262330553
drop table t1, t2, tbl1;
drop view v1;

View File

@ -0,0 +1,161 @@
alter system flush plan cache global;
select ceil(3.1415926);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(3.1415926) ceil(3.1415926) 246 9 1 N 32897 0 63
ceil(3.1415926)
4
select ceil(-3.1415926);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-3.1415926) ceil(-3.1415926) 246 9 2 N 32897 0 63
ceil(-3.1415926)
-3
select ceil(0.00);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(0.00) ceil(0.00) 246 4 1 N 32897 0 63
ceil(0.00)
0
select ceil(-0.0);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-0.0) ceil(-0.0) 246 3 1 N 32897 0 63
ceil(-0.0)
0
select ceil(0.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(0.123456789) ceil(0.123456789) 246 11 1 N 32897 0 63
ceil(0.123456789)
1
select ceil(-0.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-0.123456789) ceil(-0.123456789) 246 11 1 N 32897 0 63
ceil(-0.123456789)
0
select ceil(123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(123456789.123456789) ceil(123456789.123456789) 246 11 9 N 32897 0 63
ceil(123456789.123456789)
123456790
select ceil(-99999999.999999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-99999999.999999999) ceil(-99999999.999999999) 246 11 9 N 32897 0 63
ceil(-99999999.999999999)
-99999999
select ceil(999999999.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(999999999.123456789) ceil(999999999.123456789) 246 11 10 N 32897 0 63
ceil(999999999.123456789)
1000000000
select ceil(-999999999.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-999999999.123456789) ceil(-999999999.123456789) 246 11 10 N 32897 0 63
ceil(-999999999.123456789)
-999999999
select ceil(-123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-123456789123456789123456789.123456789) ceil(-123456789123456789123456789.123456789) 246 11 28 N 32897 0 63
ceil(-123456789123456789123456789.123456789)
-123456789123456789123456789
select ceil(123456789123456789123456789123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(123456789123456789123456789123456789123456789123456789.123456789) ceil(123456789123456789123456789123456789123456789123456789.123456789) 246 11 54 N 32897 0 63
ceil(123456789123456789123456789123456789123456789123456789.123456789)
123456789123456789123456789123456789123456789123456790
select ceil(-123456789123456789123456789123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-123456789123456789123456789123456789123456789123456789.123456789) ceil(-123456789123456789123456789123456789123456789123456789.123456789) 246 11 55 N 32897 0 63
ceil(-123456789123456789123456789123456789123456789123456789.123456789)
-123456789123456789123456789123456789123456789123456789
select ceil(123456789123456789123456789.123456789123456789123456789123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(123456789123456789123456789.123456789123456789123456789123456789) ceil(123456789123456789123456789.123456789123456789123456789123456789) 246 64 27 N 32897 0 63
ceil(123456789123456789123456789.123456789123456789123456789123456789)
123456789123456789123456790
select ceil(-123456789123456789123456789.123456789123456789123456789123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-123456789123456789123456789.123456789123456789123456789123456789) ceil(-123456789123456789123456789.123456789123456789123456789123456789) 246 64 28 N 32897 0 63
ceil(-123456789123456789123456789.123456789123456789123456789123456789)
-123456789123456789123456789
select ceil(-123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-123456789123456789123456789.123456789) ceil(-123456789123456789123456789.123456789) 246 11 28 N 32897 0 63
ceil(-123456789123456789123456789.123456789)
-123456789123456789123456789
select ceil(999999999999999999999999999999999999999999999.499999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(999999999999999999999999999999999999999999999.499999999) ceil(999999999999999999999999999999999999999999999.499999999) 246 11 46 N 32897 0 63
ceil(999999999999999999999999999999999999999999999.499999999)
1000000000000000000000000000000000000000000000
select ceil(999999999999999999999999999999999999999999999.500000001);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(999999999999999999999999999999999999999999999.500000001) ceil(999999999999999999999999999999999999999999999.500000001) 246 11 46 N 32897 0 63
ceil(999999999999999999999999999999999999999999999.500000001)
1000000000000000000000000000000000000000000000
select ceil(99999999999999999999999999999999999999999999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(99999999999999999999999999999999999999999999.399999999) ceil(99999999999999999999999999999999999999999999.399999999) 246 11 45 N 32897 0 63
ceil(99999999999999999999999999999999999999999999.399999999)
100000000000000000000000000000000000000000000
select ceil(-99999999999999999999999999999999999999999999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-99999999999999999999999999999999999999999999.399999999) ceil(-99999999999999999999999999999999999999999999.399999999) 246 11 45 N 32897 0 63
ceil(-99999999999999999999999999999999999999999999.399999999)
-99999999999999999999999999999999999999999999
select ceil(-99999999999999999999999999999999999999999999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-99999999999999999999999999999999999999999999.399999999) ceil(-99999999999999999999999999999999999999999999.399999999) 246 11 45 N 32897 0 63
ceil(-99999999999999999999999999999999999999999999.399999999)
-99999999999999999999999999999999999999999999
select ceil(999999999999999999999999999999999999999999999211111.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(999999999999999999999999999999999999999999999211111.399999999) ceil(999999999999999999999999999999999999999999999211111.399999999) 246 11 51 N 32897 0 63
ceil(999999999999999999999999999999999999999999999211111.399999999)
999999999999999999999999999999999999999999999211112
select ceil(-999999999999999999999999999999999999999999999211111.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-999999999999999999999999999999999999999999999211111.399999999) ceil(-999999999999999999999999999999999999999999999211111.399999999) 246 11 52 N 32897 0 63
ceil(-999999999999999999999999999999999999999999999211111.399999999)
-999999999999999999999999999999999999999999999211111
select ceil(-999999999999999999999999999999999999999999999511111.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-999999999999999999999999999999999999999999999511111.399999999) ceil(-999999999999999999999999999999999999999999999511111.399999999) 246 11 52 N 32897 0 63
ceil(-999999999999999999999999999999999999999999999511111.399999999)
-999999999999999999999999999999999999999999999511111
select ceil(-999999999999999999999999999999999999999999999499999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-999999999999999999999999999999999999999999999499999.399999999) ceil(-999999999999999999999999999999999999999999999499999.399999999) 246 11 52 N 32897 0 63
ceil(-999999999999999999999999999999999999999999999499999.399999999)
-999999999999999999999999999999999999999999999499999
select ceil(-1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-1) ceil(-1) 8 2 2 N 32897 0 63
ceil(-1)
-1
select floor(-1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-1) floor(-1) 8 2 2 N 32897 0 63
floor(-1)
-1
select ceil(-161);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-161) ceil(-161) 8 2 4 N 32897 0 63
ceil(-161)
-161
select floor(-161);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-161) floor(-161) 8 2 4 N 32897 0 63
floor(-161)
-161
select ceil(null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(null) ceil(null) 5 23 0 Y 32896 0 63
ceil(null)
NULL
select floor(null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(null) floor(null) 5 23 0 Y 32896 0 63
floor(null)
NULL
select floor(1+null*5);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(1+null*5) floor(1+null*5) 5 23 0 Y 32896 0 63
floor(1+null*5)
NULL

View File

@ -0,0 +1,499 @@
alter system flush plan cache global;
select 1.345;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 1.345 1.345 246 6 5 N 32897 3 63
1.345
1.345
select round(1.345);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def round(1.345) round(1.345) 246 3 1 N 32897 0 63
round(1.345)
1
select -13.544;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def -13.544 -13.544 246 6 7 N 32897 3 63
-13.544
-13.544
select round(-13.544);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def round(-13.544) round(-13.544) 246 3 3 N 32897 0 63
round(-13.544)
-14
select round(0.0);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def round(0.0) round(0.0) 246 3 1 N 32897 0 63
round(0.0)
0
drop table if exists t1;
create table t1(a int);
insert into t1 values(10);
select round(a + 0.5) from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def round(a + 0.5) round(a + 0.5) 246 14 2 Y 32896 0 63
round(a + 0.5)
11
select round(a + 0.4) from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def round(a + 0.4) round(a + 0.4) 246 14 2 Y 32896 0 63
round(a + 0.4)
10
drop table t1;
select floor(null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(null) floor(null) 5 23 0 Y 32896 0 63
floor(null)
NULL
select ceil(null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(null) ceil(null) 5 23 0 Y 32896 0 63
ceil(null)
NULL
select floor(-123);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-123) floor(-123) 8 4 4 N 32897 0 63
floor(-123)
-123
select floor(-123.123);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-123.123) floor(-123.123) 246 7 4 N 32897 0 63
floor(-123.123)
-124
select floor(123);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(123) floor(123) 8 4 3 N 32897 0 63
floor(123)
123
select ceil(-1234.1223);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-1234.1223) ceil(-1234.1223) 246 9 5 N 32897 0 63
ceil(-1234.1223)
-1234
select ceil(-123);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(-123) ceil(-123) 8 4 4 N 32897 0 63
ceil(-123)
-123
select ceil(123);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(123) ceil(123) 8 4 3 N 32897 0 63
ceil(123)
123
select floor(3.1415926);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(3.1415926) floor(3.1415926) 246 9 1 N 32897 0 63
floor(3.1415926)
3
select floor(-3.1415926);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-3.1415926) floor(-3.1415926) 246 9 2 N 32897 0 63
floor(-3.1415926)
-4
select floor(0.00);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(0.00) floor(0.00) 246 4 1 N 32897 0 63
floor(0.00)
0
select floor(-0.0);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-0.0) floor(-0.0) 246 3 1 N 32897 0 63
floor(-0.0)
0
select floor(0.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(0.123456789) floor(0.123456789) 246 11 1 N 32897 0 63
floor(0.123456789)
0
select floor(-0.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-0.123456789) floor(-0.123456789) 246 11 2 N 32897 0 63
floor(-0.123456789)
-1
select floor(123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(123456789.123456789) floor(123456789.123456789) 246 11 9 N 32897 0 63
floor(123456789.123456789)
123456789
select floor(-99999999.999999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-99999999.999999999) floor(-99999999.999999999) 246 11 10 N 32897 0 63
floor(-99999999.999999999)
-100000000
select floor(999999999.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(999999999.123456789) floor(999999999.123456789) 246 11 9 N 32897 0 63
floor(999999999.123456789)
999999999
select floor(-999999999.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-999999999.123456789) floor(-999999999.123456789) 246 11 11 N 32897 0 63
floor(-999999999.123456789)
-1000000000
select floor(-123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-123456789123456789123456789.123456789) floor(-123456789123456789123456789.123456789) 246 11 28 N 32897 0 63
floor(-123456789123456789123456789.123456789)
-123456789123456789123456790
select floor(123456789123456789123456789123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(123456789123456789123456789123456789123456789123456789.123456789) floor(123456789123456789123456789123456789123456789123456789.123456789) 246 11 54 N 32897 0 63
floor(123456789123456789123456789123456789123456789123456789.123456789)
123456789123456789123456789123456789123456789123456789
select floor(-123456789123456789123456789123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-123456789123456789123456789123456789123456789123456789.123456789) floor(-123456789123456789123456789123456789123456789123456789.123456789) 246 11 55 N 32897 0 63
floor(-123456789123456789123456789123456789123456789123456789.123456789)
-123456789123456789123456789123456789123456789123456790
select floor(123456789123456789123456789.123456789123456789123456789123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(123456789123456789123456789.123456789123456789123456789123456789) floor(123456789123456789123456789.123456789123456789123456789123456789) 246 64 27 N 32897 0 63
floor(123456789123456789123456789.123456789123456789123456789123456789)
123456789123456789123456789
select floor(-123456789123456789123456789.123456789123456789123456789123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-123456789123456789123456789.123456789123456789123456789123456789) floor(-123456789123456789123456789.123456789123456789123456789123456789) 246 64 28 N 32897 0 63
floor(-123456789123456789123456789.123456789123456789123456789123456789)
-123456789123456789123456790
select floor(-123456789123456789123456789.123456789);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-123456789123456789123456789.123456789) floor(-123456789123456789123456789.123456789) 246 11 28 N 32897 0 63
floor(-123456789123456789123456789.123456789)
-123456789123456789123456790
select floor(999999999999999999999999999999999999999999999.499999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(999999999999999999999999999999999999999999999.499999999) floor(999999999999999999999999999999999999999999999.499999999) 246 11 45 N 32897 0 63
floor(999999999999999999999999999999999999999999999.499999999)
999999999999999999999999999999999999999999999
select floor(999999999999999999999999999999999999999999999.500000001);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(999999999999999999999999999999999999999999999.500000001) floor(999999999999999999999999999999999999999999999.500000001) 246 11 45 N 32897 0 63
floor(999999999999999999999999999999999999999999999.500000001)
999999999999999999999999999999999999999999999
select floor(99999999999999999999999999999999999999999999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(99999999999999999999999999999999999999999999.399999999) floor(99999999999999999999999999999999999999999999.399999999) 246 11 44 N 32897 0 63
floor(99999999999999999999999999999999999999999999.399999999)
99999999999999999999999999999999999999999999
select floor(-99999999999999999999999999999999999999999999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-99999999999999999999999999999999999999999999.399999999) floor(-99999999999999999999999999999999999999999999.399999999) 246 11 46 N 32897 0 63
floor(-99999999999999999999999999999999999999999999.399999999)
-100000000000000000000000000000000000000000000
select floor(-99999999999999999999999999999999999999999999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-99999999999999999999999999999999999999999999.399999999) floor(-99999999999999999999999999999999999999999999.399999999) 246 11 46 N 32897 0 63
floor(-99999999999999999999999999999999999999999999.399999999)
-100000000000000000000000000000000000000000000
select floor(999999999999999999999999999999999999999999999211111.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(999999999999999999999999999999999999999999999211111.399999999) floor(999999999999999999999999999999999999999999999211111.399999999) 246 11 51 N 32897 0 63
floor(999999999999999999999999999999999999999999999211111.399999999)
999999999999999999999999999999999999999999999211111
select floor(-999999999999999999999999999999999999999999999211111.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-999999999999999999999999999999999999999999999211111.399999999) floor(-999999999999999999999999999999999999999999999211111.399999999) 246 11 52 N 32897 0 63
floor(-999999999999999999999999999999999999999999999211111.399999999)
-999999999999999999999999999999999999999999999211112
select floor(-999999999999999999999999999999999999999999999511111.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-999999999999999999999999999999999999999999999511111.399999999) floor(-999999999999999999999999999999999999999999999511111.399999999) 246 11 52 N 32897 0 63
floor(-999999999999999999999999999999999999999999999511111.399999999)
-999999999999999999999999999999999999999999999511112
select floor(-999999999999999999999999999999999999999999999499999.399999999);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(-999999999999999999999999999999999999999999999499999.399999999) floor(-999999999999999999999999999999999999999999999499999.399999999) 246 11 52 N 32897 0 63
floor(-999999999999999999999999999999999999999999999499999.399999999)
-999999999999999999999999999999999999999999999500000
select CEIL(109.19) ceil_val,FLOOR(109.19) floor_val from dual;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil_val ceil_val 246 6 3 N 32897 0 63
def floor_val floor_val 246 6 3 N 32897 0 63
ceil_val floor_val
110 109
select ceil( 10.00000000001 ) from dual;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil( 10.00000000001 ) ceil( 10.00000000001 ) 246 14 2 N 32897 0 63
ceil( 10.00000000001 )
11
select ceil( -1.99 )from dual;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil( -1.99 ) ceil( -1.99 ) 246 4 2 N 32897 0 63
ceil( -1.99 )
-1
select ceil( -1.9999999999999999999999999999999999999999111111111 )from dual;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil( -1.9999999999999999999999999999999999999999111111111 ) ceil( -1.9999999999999999999999999999999999999999111111111 ) 246 51 2 N 32897 0 63
ceil( -1.9999999999999999999999999999999999999999111111111 )
-1
select ceil( -1.999999999999999999999999999999999999999999999111111111 )from dual;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil( -1.999999999999999999999999999999999999999999999111111111 ) ceil( -1.999999999999999999999999999999999999999999999111111111 ) 246 56 2 N 32897 0 63
ceil( -1.999999999999999999999999999999999999999999999111111111 )
-1
select floor(0.00000000000),ceil(0.00000);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(0.00000000000) floor(0.00000000000) 246 13 1 N 32897 0 63
def ceil(0.00000) ceil(0.00000) 246 7 1 N 32897 0 63
floor(0.00000000000) ceil(0.00000)
0 0
select ceil( 10.00000000001 ) from dual;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil( 10.00000000001 ) ceil( 10.00000000001 ) 246 14 2 N 32897 0 63
ceil( 10.00000000001 )
11
drop table if exists tbl1;
create table tbl1 (i1 int, v2 varchar(80), i3 char(20),i4 float, d4 datetime(6),i5 decimal(5,3), primary key(i1));
insert into tbl1 values(1,'now','haha1',1.6256,'2014-05-04 12:00:00',-10.235);
insert into tbl1 values(2,'now','haha2',-1.6256,'2014-05-04 12:00:00',1.243);
insert into tbl1 values(3,'now','haha3',1.156,'2014-05-04 12:00:00',-1.45);
insert into tbl1 values(4,'now','haha1',5.9256,'2014-05-04 12:00:00',3.45);
insert into tbl1 values(5,'now1','haha2',1.2356,'2014-05-04 12:00:00',-0.25);
insert into tbl1 values(6,'now2','haha3',-10.4256,'2014-05-04 12:00:00',0.253);
insert into tbl1 values(7,'now3','haha4',0.6256,'2014-05-04 12:00:00',1.677);
select floor(i4),floor(i5) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(i4) floor(i4) 5 23 3 Y 32896 0 63
def floor(i5) floor(i5) 8 5 3 Y 32896 0 63
floor(i4) floor(i5)
1 -11
-2 1
1 -2
5 3
1 -1
-11 0
0 1
select max(floor(i4)),max(floor(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def max(floor(i4)) max(floor(i4)) 5 23 1 Y 32896 0 63
def max(floor(i5)) max(floor(i5)) 8 5 1 Y 32896 0 63
max(floor(i4)) max(floor(i5))
5 3
select min(floor(i4)),min(floor(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def min(floor(i4)) min(floor(i4)) 5 23 3 Y 32896 0 63
def min(floor(i5)) min(floor(i5)) 8 5 3 Y 32896 0 63
min(floor(i4)) min(floor(i5))
-11 -11
select max(ceil(i4)),max(ceil(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def max(ceil(i4)) max(ceil(i4)) 5 23 1 Y 32896 0 63
def max(ceil(i5)) max(ceil(i5)) 8 5 1 Y 32896 0 63
max(ceil(i4)) max(ceil(i5))
6 4
select min(ceil(i4)),min(ceil(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def min(ceil(i4)) min(ceil(i4)) 5 23 3 Y 32896 0 63
def min(ceil(i5)) min(ceil(i5)) 8 5 3 Y 32896 0 63
min(ceil(i4)) min(ceil(i5))
-10 -10
select avg(ceil(i4)),avg(ceil(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def avg(ceil(i4)) avg(ceil(i4)) 5 23 6 Y 32896 4 63
def avg(ceil(i5)) avg(ceil(i5)) 246 11 7 Y 32896 4 63
avg(ceil(i4)) avg(ceil(i5))
0.2857 -0.2857
select avg(ceil(i5)),avg(floor(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def avg(ceil(i5)) avg(ceil(i5)) 246 11 7 Y 32896 4 63
def avg(floor(i5)) avg(floor(i5)) 246 11 7 Y 32896 4 63
avg(ceil(i5)) avg(floor(i5))
-0.2857 -1.2857
select sum(ceil(i4)),sum(ceil(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def sum(ceil(i4)) sum(ceil(i4)) 5 23 1 Y 32896 0 63
def sum(ceil(i5)) sum(ceil(i5)) 246 6 2 Y 32896 0 63
sum(ceil(i4)) sum(ceil(i5))
2 -2
select count(ceil(i4)),count(ceil(i5)) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def count(ceil(i4)) count(ceil(i4)) 8 20 1 Y 32896 0 63
def count(ceil(i5)) count(ceil(i5)) 8 20 1 Y 32896 0 63
count(ceil(i4)) count(ceil(i5))
7 7
select ceil(count(ceil(i4))),floor(count(ceil(i5))) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(count(ceil(i4))) ceil(count(ceil(i4))) 8 20 1 Y 32896 0 63
def floor(count(ceil(i5))) floor(count(ceil(i5))) 8 20 1 Y 32896 0 63
ceil(count(ceil(i4))) floor(count(ceil(i5)))
7 7
select ceil(avg(ceil(i4))),floor(avg(ceil(i5))) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(avg(ceil(i4))) ceil(avg(ceil(i4))) 5 23 1 Y 32896 0 63
def floor(avg(ceil(i5))) floor(avg(ceil(i5))) 8 9 2 Y 32896 0 63
ceil(avg(ceil(i4))) floor(avg(ceil(i5)))
1 -1
select ceil(avg(ceil(i4))),ceil(avg(ceil(i5))) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(avg(ceil(i4))) ceil(avg(ceil(i4))) 5 23 1 Y 32896 0 63
def ceil(avg(ceil(i5))) ceil(avg(ceil(i5))) 8 9 1 Y 32896 0 63
ceil(avg(ceil(i4))) ceil(avg(ceil(i5)))
1 0
select * from tbl1 where floor(i4)=2;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test tbl1 tbl1 i1 i1 3 11 0 N 49283 0 63
def test tbl1 tbl1 v2 v2 253 320 0 Y 0 31 45
def test tbl1 tbl1 i3 i3 254 80 0 Y 0 31 45
def test tbl1 tbl1 i4 i4 4 12 0 Y 32896 31 63
def test tbl1 tbl1 d4 d4 12 26 0 Y 128 6 63
def test tbl1 tbl1 i5 i5 246 7 0 Y 32896 3 63
i1 v2 i3 i4 d4 i5
select * from tbl1 where floor(i4)=ceil(i4)-1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test tbl1 tbl1 i1 i1 3 11 1 N 49283 0 63
def test tbl1 tbl1 v2 v2 253 320 4 Y 0 31 45
def test tbl1 tbl1 i3 i3 254 80 5 Y 0 31 45
def test tbl1 tbl1 i4 i4 4 12 8 Y 32896 31 63
def test tbl1 tbl1 d4 d4 12 26 26 Y 128 6 63
def test tbl1 tbl1 i5 i5 246 7 7 Y 32896 3 63
i1 v2 i3 i4 d4 i5
1 now haha1 1.6256 2014-05-04 12:00:00.000000 -10.235
2 now haha2 -1.6256 2014-05-04 12:00:00.000000 1.243
3 now haha3 1.156 2014-05-04 12:00:00.000000 -1.450
4 now haha1 5.9256 2014-05-04 12:00:00.000000 3.450
5 now1 haha2 1.2356 2014-05-04 12:00:00.000000 -0.250
6 now2 haha3 -10.4256 2014-05-04 12:00:00.000000 0.253
7 now3 haha4 0.6256 2014-05-04 12:00:00.000000 1.677
select * from tbl1 where floor(i1)=ceil(i1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test tbl1 tbl1 i1 i1 3 11 1 N 49283 0 63
def test tbl1 tbl1 v2 v2 253 320 4 Y 0 31 45
def test tbl1 tbl1 i3 i3 254 80 5 Y 0 31 45
def test tbl1 tbl1 i4 i4 4 12 8 Y 32896 31 63
def test tbl1 tbl1 d4 d4 12 26 26 Y 128 6 63
def test tbl1 tbl1 i5 i5 246 7 7 Y 32896 3 63
i1 v2 i3 i4 d4 i5
1 now haha1 1.6256 2014-05-04 12:00:00.000000 -10.235
2 now haha2 -1.6256 2014-05-04 12:00:00.000000 1.243
3 now haha3 1.156 2014-05-04 12:00:00.000000 -1.450
4 now haha1 5.9256 2014-05-04 12:00:00.000000 3.450
5 now1 haha2 1.2356 2014-05-04 12:00:00.000000 -0.250
6 now2 haha3 -10.4256 2014-05-04 12:00:00.000000 0.253
7 now3 haha4 0.6256 2014-05-04 12:00:00.000000 1.677
select floor(i1/10*8),i1/10*8 from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(i1/10*8) floor(i1/10*8) 8 16 1 Y 32896 0 63
def i1/10*8 i1/10*8 246 18 6 Y 32896 4 63
floor(i1/10*8) i1/10*8
0 0.8000
1 1.6000
2 2.4000
3 3.2000
4 4.0000
4 4.8000
5 5.6000
select ceil(i1/10*8),i1/10*8 from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(i1/10*8) ceil(i1/10*8) 8 16 1 Y 32896 0 63
def i1/10*8 i1/10*8 246 18 6 Y 32896 4 63
ceil(i1/10*8) i1/10*8
1 0.8000
2 1.6000
3 2.4000
4 3.2000
4 4.0000
5 4.8000
6 5.6000
select * from tbl1 order by floor(i4);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test tbl1 tbl1 i1 i1 3 11 1 N 49283 0 63
def test tbl1 tbl1 v2 v2 253 320 4 Y 0 31 45
def test tbl1 tbl1 i3 i3 254 80 5 Y 0 31 45
def test tbl1 tbl1 i4 i4 4 12 8 Y 32896 31 63
def test tbl1 tbl1 d4 d4 12 26 26 Y 128 6 63
def test tbl1 tbl1 i5 i5 246 7 7 Y 32896 3 63
i1 v2 i3 i4 d4 i5
6 now2 haha3 -10.4256 2014-05-04 12:00:00.000000 0.253
2 now haha2 -1.6256 2014-05-04 12:00:00.000000 1.243
7 now3 haha4 0.6256 2014-05-04 12:00:00.000000 1.677
1 now haha1 1.6256 2014-05-04 12:00:00.000000 -10.235
3 now haha3 1.156 2014-05-04 12:00:00.000000 -1.450
5 now1 haha2 1.2356 2014-05-04 12:00:00.000000 -0.250
4 now haha1 5.9256 2014-05-04 12:00:00.000000 3.450
select * from tbl1 order by floor(i4) desc;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test tbl1 tbl1 i1 i1 3 11 1 N 49283 0 63
def test tbl1 tbl1 v2 v2 253 320 4 Y 0 31 45
def test tbl1 tbl1 i3 i3 254 80 5 Y 0 31 45
def test tbl1 tbl1 i4 i4 4 12 8 Y 32896 31 63
def test tbl1 tbl1 d4 d4 12 26 26 Y 128 6 63
def test tbl1 tbl1 i5 i5 246 7 7 Y 32896 3 63
i1 v2 i3 i4 d4 i5
4 now haha1 5.9256 2014-05-04 12:00:00.000000 3.450
1 now haha1 1.6256 2014-05-04 12:00:00.000000 -10.235
3 now haha3 1.156 2014-05-04 12:00:00.000000 -1.450
5 now1 haha2 1.2356 2014-05-04 12:00:00.000000 -0.250
7 now3 haha4 0.6256 2014-05-04 12:00:00.000000 1.677
2 now haha2 -1.6256 2014-05-04 12:00:00.000000 1.243
6 now2 haha3 -10.4256 2014-05-04 12:00:00.000000 0.253
select floor(i4) abc from tbl1 order by abc desc;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abc abc 5 23 3 Y 32896 0 63
abc
5
1
1
1
0
-2
-11
select floor(v2) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(v2) floor(v2) 5 23 1 Y 32896 0 63
floor(v2)
0
0
0
0
0
0
0
Warnings:
Warning 1292 Truncated incorrect DOUBLE value: 'now'
Warning 1292 Truncated incorrect DOUBLE value: 'now'
Warning 1292 Truncated incorrect DOUBLE value: 'now'
Warning 1292 Truncated incorrect DOUBLE value: 'now'
Warning 1292 Truncated incorrect DOUBLE value: 'now1'
Warning 1292 Truncated incorrect DOUBLE value: 'now2'
Warning 1292 Truncated incorrect DOUBLE value: 'now3'
select floor(i3) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(i3) floor(i3) 5 23 1 Y 32896 0 63
floor(i3)
0
0
0
0
0
0
0
Warnings:
Warning 1292 Truncated incorrect DOUBLE value: 'haha1'
Warning 1292 Truncated incorrect DOUBLE value: 'haha2'
Warning 1292 Truncated incorrect DOUBLE value: 'haha3'
Warning 1292 Truncated incorrect DOUBLE value: 'haha1'
Warning 1292 Truncated incorrect DOUBLE value: 'haha2'
Warning 1292 Truncated incorrect DOUBLE value: 'haha3'
Warning 1292 Truncated incorrect DOUBLE value: 'haha4'
select floor(d4) from tbl1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(d4) floor(d4) 5 25 14 Y 32896 0 63
floor(d4)
20140504120000
20140504120000
20140504120000
20140504120000
20140504120000
20140504120000
20140504120000
drop table if exists tbl2;
create table tbl2 (i1 int, v2 varchar(80), primary key(i1));
insert into tbl2 values(1,'1');
insert into tbl2 values(2,'2.5');
insert into tbl2 values(3,'-3.2');
select floor(v2),ceil(v2) from tbl2;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(v2) floor(v2) 5 23 2 Y 32896 0 63
def ceil(v2) ceil(v2) 5 23 2 Y 32896 0 63
floor(v2) ceil(v2)
1 1
2 3
-4 -3

View File

@ -0,0 +1,717 @@
alter system flush plan cache global;
select repeat(' ',10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def repeat(' ',10) repeat(' ',10) 253 2048 30 Y 0 31 45
repeat(' ',10)
select extract(MICROSECOND FROM '2012-09-01 10:35:07:99999') ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def extract(MICROSECOND FROM '2012-09-01 10:35:07:99999') extract(MICROSECOND FROM '2012-09-01 10:35:07:99999') 8 20 1 Y 32896 0 63
extract(MICROSECOND FROM '2012-09-01 10:35:07:99999')
0
select extract(SECOND FROM '2012-09-01 10:35:07:99999') ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def extract(SECOND FROM '2012-09-01 10:35:07:99999') extract(SECOND FROM '2012-09-01 10:35:07:99999') 8 20 1 Y 32896 0 63
extract(SECOND FROM '2012-09-01 10:35:07:99999')
7
select extract(MINUTE FROM '2012-09-01 10:35:07:99999') ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def extract(MINUTE FROM '2012-09-01 10:35:07:99999') extract(MINUTE FROM '2012-09-01 10:35:07:99999') 8 20 2 Y 32896 0 63
extract(MINUTE FROM '2012-09-01 10:35:07:99999')
35
select extract(HOUR FROM '2012-09-01 10:35:07:99999') ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def extract(HOUR FROM '2012-09-01 10:35:07:99999') extract(HOUR FROM '2012-09-01 10:35:07:99999') 8 20 2 Y 32896 0 63
extract(HOUR FROM '2012-09-01 10:35:07:99999')
10
select extract(DAY FROM '2012-09-01 10:35:07:99999') ;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def extract(DAY FROM '2012-09-01 10:35:07:99999') extract(DAY FROM '2012-09-01 10:35:07:99999') 8 20 1 Y 32896 0 63
extract(DAY FROM '2012-09-01 10:35:07:99999')
1
select date_format('2007-10-04 22:23:10.567', '%H:%i:%s');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2007-10-04 22:23:10.567', '%H:%i:%s') date_format('2007-10-04 22:23:10.567', '%H:%i:%s') 253 104 8 Y 0 31 45
date_format('2007-10-04 22:23:10.567', '%H:%i:%s')
22:23:10
select date_format(timestamp'2007-10-04 22:23:10.567', '%H:%i:%s');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format(timestamp'2007-10-04 22:23:10.567', '%H:%i:%s') date_format(timestamp'2007-10-04 22:23:10.567', '%H:%i:%s') 253 104 8 Y 0 31 45
date_format(timestamp'2007-10-04 22:23:10.567', '%H:%i:%s')
22:23:10
select date_format('2007-10-04 22:23:10.567', '%H %k %I %r %T %S %w');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2007-10-04 22:23:10.567', '%H %k %I %r %T %S %w') date_format('2007-10-04 22:23:10.567', '%H %k %I %r %T %S %w') 253 104 34 Y 0 31 45
date_format('2007-10-04 22:23:10.567', '%H %k %I %r %T %S %w')
22 22 10 10:23:10 PM 22:23:10 10 4
select date_format('2007-10-04 22:23:10.567', '%c %d %e %f %H %h %I %i %j %k %l %m %p %r %S %s %T %U %u %V %v %w %X %x %Y %y %%');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2007-10-04 22:23:10.567', '%c %d %e %f %H %h %I %i %j %k %l %m %p %r %S %s %T %U %u %V %v %w %X %x %Y %y %%') date_format('2007-10-04 22:23:10.567', '%c %d %e %f %H %h %I %i %j %k %l %m %p %r %S %s %T %U %u %V %v %w %X %x %Y %y %%') 253 104 103 Y 0 31 45
date_format('2007-10-04 22:23:10.567', '%c %d %e %f %H %h %I %i %j %k %l %m %p %r %S %s %T %U %u %V %v %w %X %x %Y %y %%')
10 04 4 567000 22 10 10 23 277 22 10 10 PM 10:23:10 PM 10 10 22:23:10 39 40 39 40 4 2007 2007 2007 07 %
2007-01-01 year_day=week_day=1
select date_format('2007-01-01', '%U %u %V-%X %v-%x');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2007-01-01', '%U %u %V-%X %v-%x') date_format('2007-01-01', '%U %u %V-%X %v-%x') 253 104 21 Y 0 31 45
date_format('2007-01-01', '%U %u %V-%X %v-%x')
00 01 53-2006 01-2007
2013-01-01 year_day=1, week_day=2 the critical week in this year
select date_format('2013-01-01', '%U %u %V-%X %v-%x');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2013-01-01', '%U %u %V-%X %v-%x') date_format('2013-01-01', '%U %u %V-%X %v-%x') 253 104 21 Y 0 31 45
date_format('2013-01-01', '%U %u %V-%X %v-%x')
00 01 53-2012 01-2013
2015-01-01 year_day=1, week_day=4 the critical week in last year when start with sunday, in this year when start with monday
select date_format('2015-01-01', '%U %u %V-%X %v-%x');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2015-01-01', '%U %u %V-%X %v-%x') date_format('2015-01-01', '%U %u %V-%X %v-%x') 253 104 21 Y 0 31 45
date_format('2015-01-01', '%U %u %V-%X %v-%x')
00 01 52-2014 01-2015
2014-12-31 year_day=365, week_day=3 thi critical week in this year when start with sunday, in next year when start with monday
select date_format('2014-12-31', '%U %u %V-%X %v-%x');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2014-12-31', '%U %u %V-%X %v-%x') date_format('2014-12-31', '%U %u %V-%X %v-%x') 253 104 21 Y 0 31 45
date_format('2014-12-31', '%U %u %V-%X %v-%x')
52 53 52-2014 01-2015
select date_format('2014-04-24', '%U %u %V-%X %v-%x');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2014-04-24', '%U %u %V-%X %v-%x') date_format('2014-04-24', '%U %u %V-%X %v-%x') 253 104 21 Y 0 31 45
date_format('2014-04-24', '%U %u %V-%X %v-%x')
16 17 16-2014 17-2014
select date_format('2014-09-24', NULL);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format('2014-09-24', NULL) date_format('2014-09-24', NULL) 253 104 0 Y 0 31 45
date_format('2014-09-24', NULL)
NULL
select date_format(NULL, '%U %u %V-%X %v-%x');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_format(NULL, '%U %u %V-%X %v-%x') date_format(NULL, '%U %u %V-%X %v-%x') 253 104 0 Y 0 31 45
date_format(NULL, '%U %u %V-%X %v-%x')
NULL
select str_to_date('1970-02-03', '%Y-%m-%d');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-02-03', '%Y-%m-%d') str_to_date('1970-02-03', '%Y-%m-%d') 10 10 10 Y 128 0 63
str_to_date('1970-02-03', '%Y-%m-%d')
1970-02-03
select str_to_date('04/31/2004', '%m/%d/%Y');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('04/31/2004', '%m/%d/%Y') str_to_date('04/31/2004', '%m/%d/%Y') 10 10 0 Y 128 0 63
str_to_date('04/31/2004', '%m/%d/%Y')
NULL
select str_to_date('04/30/2004 10:23:24.789', '%m/%d/%Y %T.%f');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('04/30/2004 10:23:24.789', '%m/%d/%Y %T.%f') str_to_date('04/30/2004 10:23:24.789', '%m/%d/%Y %T.%f') 12 26 26 Y 128 6 63
str_to_date('04/30/2004 10:23:24.789', '%m/%d/%Y %T.%f')
2004-04-30 10:23:24.789000
select str_to_date('4/30/2013 PM 09:25:45', '%m/%e/%Y %p %h:%i:%S');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('4/30/2013 PM 09:25:45', '%m/%e/%Y %p %h:%i:%S') str_to_date('4/30/2013 PM 09:25:45', '%m/%e/%Y %p %h:%i:%S') 12 19 19 Y 128 0 63
str_to_date('4/30/2013 PM 09:25:45', '%m/%e/%Y %p %h:%i:%S')
2013-04-30 21:25:45
select str_to_date('1970-02-03 10:56:56', '%Y-%m-%d %T');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-02-03 10:56:56', '%Y-%m-%d %T') str_to_date('1970-02-03 10:56:56', '%Y-%m-%d %T') 12 19 19 Y 128 0 63
str_to_date('1970-02-03 10:56:56', '%Y-%m-%d %T')
1970-02-03 10:56:56
select str_to_date(NULL, '%Y-%m-%d %T');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date(NULL, '%Y-%m-%d %T') str_to_date(NULL, '%Y-%m-%d %T') 12 19 0 Y 128 0 63
str_to_date(NULL, '%Y-%m-%d %T')
NULL
select str_to_date('1970-02-03 10:56:56', NULL);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('1970-02-03 10:56:56', NULL) str_to_date('1970-02-03 10:56:56', NULL) 12 26 0 Y 128 6 63
str_to_date('1970-02-03 10:56:56', NULL)
NULL
SELECT DATE_FORMAT('2014-01-01 24:00:00', '%r');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 24:00:00', '%r') DATE_FORMAT('2014-01-01 24:00:00', '%r') 253 104 0 Y 0 31 45
DATE_FORMAT('2014-01-01 24:00:00', '%r')
NULL
SELECT DATE_FORMAT('2014-01-01 00:00:00', '%r');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 00:00:00', '%r') DATE_FORMAT('2014-01-01 00:00:00', '%r') 253 104 11 Y 0 31 45
DATE_FORMAT('2014-01-01 00:00:00', '%r')
12:00:00 AM
SELECT DATE_FORMAT('2014-01-01 12:00:00', '%r');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 12:00:00', '%r') DATE_FORMAT('2014-01-01 12:00:00', '%r') 253 104 11 Y 0 31 45
DATE_FORMAT('2014-01-01 12:00:00', '%r')
12:00:00 PM
SELECT DATE_FORMAT('2014-01-01 15:00:00', '%r');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 15:00:00', '%r') DATE_FORMAT('2014-01-01 15:00:00', '%r') 253 104 11 Y 0 31 45
DATE_FORMAT('2014-01-01 15:00:00', '%r')
03:00:00 PM
SELECT DATE_FORMAT('2014-01-01 01:00:00', '%r');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 01:00:00', '%r') DATE_FORMAT('2014-01-01 01:00:00', '%r') 253 104 11 Y 0 31 45
DATE_FORMAT('2014-01-01 01:00:00', '%r')
01:00:00 AM
SELECT DATE_FORMAT('2014-01-01 25:00:00', '%r');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 25:00:00', '%r') DATE_FORMAT('2014-01-01 25:00:00', '%r') 253 104 0 Y 0 31 45
DATE_FORMAT('2014-01-01 25:00:00', '%r')
NULL
SELECT DATE_FORMAT('2014-01-01 00:00:00', '%l %p');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 00:00:00', '%l %p') DATE_FORMAT('2014-01-01 00:00:00', '%l %p') 253 104 5 Y 0 31 45
DATE_FORMAT('2014-01-01 00:00:00', '%l %p')
12 AM
SELECT DATE_FORMAT('2014-01-01 01:00:00', '%l %p');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 01:00:00', '%l %p') DATE_FORMAT('2014-01-01 01:00:00', '%l %p') 253 104 4 Y 0 31 45
DATE_FORMAT('2014-01-01 01:00:00', '%l %p')
1 AM
SELECT DATE_FORMAT('2014-01-01 12:00:00', '%l %p');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 12:00:00', '%l %p') DATE_FORMAT('2014-01-01 12:00:00', '%l %p') 253 104 5 Y 0 31 45
DATE_FORMAT('2014-01-01 12:00:00', '%l %p')
12 PM
SELECT DATE_FORMAT('2014-01-01 23:00:00', '%l %p');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 23:00:00', '%l %p') DATE_FORMAT('2014-01-01 23:00:00', '%l %p') 253 104 5 Y 0 31 45
DATE_FORMAT('2014-01-01 23:00:00', '%l %p')
11 PM
SELECT DATE_FORMAT('2014-01-01 24:00:00', '%l %p');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 24:00:00', '%l %p') DATE_FORMAT('2014-01-01 24:00:00', '%l %p') 253 104 0 Y 0 31 45
DATE_FORMAT('2014-01-01 24:00:00', '%l %p')
NULL
SELECT DATE_FORMAT('2014-01-01 25:00:00', '%l %p');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('2014-01-01 25:00:00', '%l %p') DATE_FORMAT('2014-01-01 25:00:00', '%l %p') 253 104 0 Y 0 31 45
DATE_FORMAT('2014-01-01 25:00:00', '%l %p')
NULL
SELECT DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896) DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896) 253 104 0 Y 0 31 45
DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896)
NULL
SELECT DATE_FORMAT('0000-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 22 Y 0 31 45
valid_date
Sunday 01 January 0000
SELECT DATE_FORMAT('0001-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 22 Y 0 31 45
valid_date
Monday 01 January 0001
SELECT DATE_FORMAT('-0001-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 0 Y 0 31 45
valid_date
NULL
SELECT DATE_FORMAT('-4713-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 0 Y 0 31 45
valid_date
NULL
SELECT DATE_FORMAT('-4712-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 0 Y 0 31 45
valid_date
NULL
SELECT DATE_FORMAT('-4714-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 0 Y 0 31 45
valid_date
NULL
SELECT DATE_FORMAT('9999-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 22 Y 0 31 45
valid_date
Friday 01 January 9999
SELECT DATE_FORMAT('10000-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 0 Y 0 31 45
valid_date
NULL
SELECT DATE_FORMAT('0000-02-28','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 24 Y 0 31 45
valid_date
Tuesday 28 February 0000
SELECT DATE_FORMAT('0001-02-28','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 26 Y 0 31 45
valid_date
Wednesday 28 February 0001
SELECT DATE_FORMAT('2009-01-01','%W %d %M %Y') as valid_date;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def valid_date valid_date 253 104 24 Y 0 31 45
valid_date
Thursday 01 January 2009
SELECT CAST(DATE_FORMAT(NULL, '%s') AS CHAR);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def CAST(DATE_FORMAT(NULL, '%s') AS CHAR) CAST(DATE_FORMAT(NULL, '%s') AS CHAR) 253 104 0 Y 0 31 45
CAST(DATE_FORMAT(NULL, '%s') AS CHAR)
NULL
SELECT CAST(DATE_FORMAT(NULL, '%s') AS DECIMAL(23,6));
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def CAST(DATE_FORMAT(NULL, '%s') AS DECIMAL(23,6)) CAST(DATE_FORMAT(NULL, '%s') AS DECIMAL(23,6)) 246 25 0 Y 32896 6 63
CAST(DATE_FORMAT(NULL, '%s') AS DECIMAL(23,6))
NULL
SELECT CAST(DATE_FORMAT(NULL, '%s') AS DATETIME);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def CAST(DATE_FORMAT(NULL, '%s') AS DATETIME) CAST(DATE_FORMAT(NULL, '%s') AS DATETIME) 12 19 0 Y 128 0 63
CAST(DATE_FORMAT(NULL, '%s') AS DATETIME)
NULL
SELECT DATE_FORMAT(NULL, '%s')+0e0;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT(NULL, '%s')+0e0 DATE_FORMAT(NULL, '%s')+0e0 5 23 0 Y 32896 31 63
DATE_FORMAT(NULL, '%s')+0e0
NULL
select str_to_date('2003-01-02', '%Y-%m-%d') as f3;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def f3 f3 10 10 10 Y 128 0 63
f3
2003-01-02
select str_to_date('04 /30/2004', '%m /%d/%Y');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('04 /30/2004', '%m /%d/%Y') str_to_date('04 /30/2004', '%m /%d/%Y') 10 10 10 Y 128 0 63
str_to_date('04 /30/2004', '%m /%d/%Y')
2004-04-30
select str_to_date('04/30 /2004', '%m /%d /%Y');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('04/30 /2004', '%m /%d /%Y') str_to_date('04/30 /2004', '%m /%d /%Y') 10 10 10 Y 128 0 63
str_to_date('04/30 /2004', '%m /%d /%Y')
2004-04-30
select str_to_date('04/30/2004 ', '%m/%d/%Y ');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('04/30/2004 ', '%m/%d/%Y ') str_to_date('04/30/2004 ', '%m/%d/%Y ') 10 10 10 Y 128 0 63
str_to_date('04/30/2004 ', '%m/%d/%Y ')
2004-04-30
select date_add(str_to_date(substr('2014-06-05 16:24:54.270374',1,8),'%Y%m%d'),interval 2 day);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def date_add(str_to_date(substr('2014-06-05 16:24:54.270374',1,8),'%Y%m%d'),interval 2 day) date_add(str_to_date(substr('2014-06-05 16:24:54.270374',1,8),'%Y%m%d'),interval 2 day) 10 10 0 Y 128 0 63
date_add(str_to_date(substr('2014-06-05 16:24:54.270374',1,8),'%Y%m%d'),interval 2 day)
NULL
select str_to_date('2014-06-','%Y%m%d');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def str_to_date('2014-06-','%Y%m%d') str_to_date('2014-06-','%Y%m%d') 10 10 0 Y 128 0 63
str_to_date('2014-06-','%Y%m%d')
NULL
select '+' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '+' + 1 '+' + 1 5 23 1 N 32897 31 63
'+' + 1
1
select '-' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '-' + 1 '-' + 1 5 23 1 N 32897 31 63
'-' + 1
1
select '.' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '.' + 1 '.' + 1 5 23 1 N 32897 31 63
'.' + 1
1
select '_' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '_' + 1 '_' + 1 5 23 1 N 32897 31 63
'_' + 1
1
select '~' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '~' + 1 '~' + 1 5 23 1 N 32897 31 63
'~' + 1
1
select '@' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '@' + 1 '@' + 1 5 23 1 N 32897 31 63
'@' + 1
1
select '#' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '#' + 1 '#' + 1 5 23 1 N 32897 31 63
'#' + 1
1
select '%' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '%' + 1 '%' + 1 5 23 1 N 32897 31 63
'%' + 1
1
select '^' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '^' + 1 '^' + 1 5 23 1 N 32897 31 63
'^' + 1
1
select '$%%%' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '$%%%' + 1 '$%%%' + 1 5 23 1 N 32897 31 63
'$%%%' + 1
1
select '(' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '(' + 1 '(' + 1 5 23 1 N 32897 31 63
'(' + 1
1
select ')' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ')' + 1 ')' + 1 5 23 1 N 32897 31 63
')' + 1
1
select '=' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '=' + 1 '=' + 1 5 23 1 N 32897 31 63
'=' + 1
1
select '{' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '{' + 1 '{' + 1 5 23 1 N 32897 31 63
'{' + 1
1
select '}' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '}' + 1 '}' + 1 5 23 1 N 32897 31 63
'}' + 1
1
select '|' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '|' + 1 '|' + 1 5 23 1 N 32897 31 63
'|' + 1
1
select '\'' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '\'' + 1 '\'' + 1 5 23 1 N 32897 31 63
'\'' + 1
1
select '"' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '"' + 1 '"' + 1 5 23 1 N 32897 31 63
'"' + 1
1
select ':' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ':' + 1 ':' + 1 5 23 1 N 32897 31 63
':' + 1
1
select '<' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '<' + 1 '<' + 1 5 23 1 N 32897 31 63
'<' + 1
1
select '>' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '>' + 1 '>' + 1 5 23 1 N 32897 31 63
'>' + 1
1
select '?' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '?' + 1 '?' + 1 5 23 1 N 32897 31 63
'?' + 1
1
select '/' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '/' + 1 '/' + 1 5 23 1 N 32897 31 63
'/' + 1
1
select '!@##' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '!@##' + 1 '!@##' + 1 5 23 1 N 32897 31 63
'!@##' + 1
1
select '$^^%%^$%(*&^(*^&*^&)' + 1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def '$^^%%^$%(*&^(*^&*^&)' + 1 '$^^%%^$%(*&^(*^&*^&)' + 1 5 23 1 N 32897 31 63
'$^^%%^$%(*&^(*^&*^&)' + 1
1
select concat(NULL, 'aaa');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def concat(NULL, 'aaa') concat(NULL, 'aaa') 253 12 0 Y 0 31 45
concat(NULL, 'aaa')
NULL
select concat('aaa', NULL);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def concat('aaa', NULL) concat('aaa', NULL) 253 12 0 Y 0 31 45
concat('aaa', NULL)
NULL
select concat('aaa','');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def concat('aaa','') concat('aaa','') 253 12 3 Y 0 31 45
concat('aaa','')
aaa
select concat('','aaa');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def concat('','aaa') concat('','aaa') 253 12 3 Y 0 31 45
concat('','aaa')
aaa
select 1.1/0.0;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def 1.1/0.0 1.1/0.0 246 8 0 Y 32896 5 63
1.1/0.0
NULL
select __OB__MIN__ > 1;
ERROR 42S22: Unknown column '__OB__MIN__' in 'field list'
select __OB__MIN__ < 1;
ERROR 42S22: Unknown column '__OB__MIN__' in 'field list'
select dump(1.1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def dump(1.1) dump(1.1) 253 16 51 Y 0 31 45
dump(1.1)
"sign=1 exp=64 se=0xc0 len=2 digits=[1,100000000,]"
select dump(1);
ERROR 0A000: Not supported feature or function
select round(1.1234, 3);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def round(1.1234, 3) round(1.1234, 3) 246 7 5 N 32897 3 63
round(1.1234, 3)
1.123
select round(1.1234);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def round(1.1234) round(1.1234) 246 3 1 N 32897 0 63
round(1.1234)
1
select false is true;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def false is true false is true 3 1 1 N 32897 0 63
false is true
0
select NULL is true;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def NULL is true NULL is true 3 1 1 N 32897 0 63
NULL is true
0
select true is true;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def true is true true is true 3 1 1 N 32897 0 63
true is true
1
select true is not true;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def true is not true true is not true 3 1 1 N 32897 0 63
true is not true
0
select NULL is NULL;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def NULL is NULL NULL is NULL 3 1 1 N 32897 0 63
NULL is NULL
1
select NULL is not NULL;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def NULL is not NULL NULL is not NULL 3 1 1 N 32897 0 63
NULL is not NULL
0
select true is false;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def true is false true is false 3 1 1 N 32897 0 63
true is false
0
select -'aaa';
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def -'aaa' -'aaa' 5 23 2 N 32897 31 63
-'aaa'
-0
select DATE_ADD(null, INTERVAL 5 DAY);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_ADD(null, INTERVAL 5 DAY) DATE_ADD(null, INTERVAL 5 DAY) 6 0 0 Y 32896 0 63
DATE_ADD(null, INTERVAL 5 DAY)
NULL
select DATE_sub(null, INTERVAL 5 DAY);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_sub(null, INTERVAL 5 DAY) DATE_sub(null, INTERVAL 5 DAY) 6 0 0 Y 32896 0 63
DATE_sub(null, INTERVAL 5 DAY)
NULL
select STR_TO_DATE(null, '%Y-%m-%d');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def STR_TO_DATE(null, '%Y-%m-%d') STR_TO_DATE(null, '%Y-%m-%d') 10 10 0 Y 128 0 63
STR_TO_DATE(null, '%Y-%m-%d')
NULL
select DATE_FORMAT(null, '%Y/%m/%D');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def DATE_FORMAT(null, '%Y/%m/%D') DATE_FORMAT(null, '%Y/%m/%D') 253 104 0 Y 0 31 45
DATE_FORMAT(null, '%Y/%m/%D')
NULL
select time_to_usec(null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def time_to_usec(null) time_to_usec(null) 8 20 0 Y 32896 0 63
time_to_usec(null)
NULL
select usec_to_time(null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def usec_to_time(null) usec_to_time(null) 7 26 0 Y 1152 6 63
usec_to_time(null)
NULL
select EXTRACT(DAY FROM null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def EXTRACT(DAY FROM null) EXTRACT(DAY FROM null) 8 20 0 Y 32896 0 63
EXTRACT(DAY FROM null)
NULL
select abs(10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(10) abs(10) 8 2 2 N 32897 0 63
abs(10)
10
select abs(-10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(-10) abs(-10) 8 2 2 N 32897 0 63
abs(-10)
10
select abs(-0);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(-0) abs(-0) 8 2 1 N 32897 0 63
abs(-0)
0
select abs(0);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(0) abs(0) 8 2 1 N 32897 0 63
abs(0)
0
select abs(1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(1) abs(1) 8 2 1 N 32897 0 63
abs(1)
1
select abs(-1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(-1) abs(-1) 8 2 1 N 32897 0 63
abs(-1)
1
select abs(-1000000000000);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(-1000000000000) abs(-1000000000000) 8 2 13 N 32897 0 63
abs(-1000000000000)
1000000000000
select abs(1000000000000);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(1000000000000) abs(1000000000000) 8 2 13 N 32897 0 63
abs(1000000000000)
1000000000000
select abs(0.1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(0.1) abs(0.1) 246 4 3 N 32897 1 63
abs(0.1)
0.1
select abs(-0.1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(-0.1) abs(-0.1) 246 4 3 N 32897 1 63
abs(-0.1)
0.1
select abs(-11.10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(-11.10) abs(-11.10) 246 6 5 N 32897 2 63
abs(-11.10)
11.10
select abs(null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(null) abs(null) 5 23 0 Y 32896 31 63
abs(null)
NULL
select abs(NULL);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(NULL) abs(NULL) 5 23 0 Y 32896 31 63
abs(NULL)
NULL
select abs(Null);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(Null) abs(Null) 5 23 0 Y 32896 31 63
abs(Null)
NULL
select abs(5-5);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(5-5) abs(5-5) 8 3 1 N 32897 0 63
abs(5-5)
0
select abs(-0.1*3);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(-0.1*3) abs(-0.1*3) 246 5 3 N 32897 1 63
abs(-0.1*3)
0.3
select abs('10');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs('10') abs('10') 5 23 2 N 32897 31 63
abs('10')
10
select abs('1');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs('1') abs('1') 5 23 1 N 32897 31 63
abs('1')
1
select abs('100');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs('100') abs('100') 5 23 3 N 32897 31 63
abs('100')
100
select abs('-100');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs('-100') abs('-100') 5 23 3 N 32897 31 63
abs('-100')
100
select abs('-100.001');
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs('-100.001') abs('-100.001') 5 23 7 N 32897 31 63
abs('-100.001')
100.001
select abs(cast(-1.21 as decimal(10,5)));
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(cast(-1.21 as decimal(10,5))) abs(cast(-1.21 as decimal(10,5))) 246 12 7 N 32897 5 63
abs(cast(-1.21 as decimal(10,5)))
1.21000
select abs(cast(-1.21 as char(1024)));
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(cast(-1.21 as char(1024))) abs(cast(-1.21 as char(1024))) 5 23 4 N 32897 31 63
abs(cast(-1.21 as char(1024)))
1.21
select abs(cast(-1.21 as decimal(5,3)));
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(cast(-1.21 as decimal(5,3))) abs(cast(-1.21 as decimal(5,3))) 246 7 5 N 32897 3 63
abs(cast(-1.21 as decimal(5,3)))
1.210
select abs(cast(-1.21 as numeric));
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(cast(-1.21 as numeric)) abs(cast(-1.21 as numeric)) 246 11 1 N 32897 0 63
abs(cast(-1.21 as numeric))
1
select repeat ('1',10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def repeat ('1',10) repeat ('1',10) 253 2048 10 Y 0 31 45
repeat ('1',10)
1111111111
select repeat (1,10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def repeat (1,10) repeat (1,10) 253 2048 10 Y 0 31 45
repeat (1,10)
1111111111
select repeat (null,10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def repeat (null,10) repeat (null,10) 253 512 0 Y 128 31 63
repeat (null,10)
NULL
select repeat ('abc',10);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def repeat ('abc',10) repeat ('abc',10) 253 2048 30 Y 0 31 45
repeat ('abc',10)
abcabcabcabcabcabcabcabcabcabc
select cast(repeat('1',5) as signed int);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def cast(repeat('1',5) as signed int) cast(repeat('1',5) as signed int) 8 21 5 Y 32896 0 63
cast(repeat('1',5) as signed int)
11111
select repeat(substr('abcd',2),1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def repeat(substr('abcd',2),1) repeat(substr('abcd',2),1) 253 2048 3 Y 0 31 45
repeat(substr('abcd',2),1)
bcd
select length(repeat(0xa1,215)), length(repeat(0x1a, 310));
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def length(repeat(0xa1,215)) length(repeat(0xa1,215)) 8 20 3 Y 32896 0 63
def length(repeat(0x1a, 310)) length(repeat(0x1a, 310)) 8 20 3 Y 32896 0 63
length(repeat(0xa1,215)) length(repeat(0x1a, 310))
215 310
select abs(true);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def abs(true) abs(true) 8 1 1 N 32897 0 63
abs(true)
1
select floor(1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def floor(1) floor(1) 8 1 1 N 32897 0 63
floor(1)
1
select ceil(1);
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def ceil(1) ceil(1) 8 1 1 N 32897 0 63
ceil(1)
1

View File

@ -0,0 +1,544 @@
--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
# owner: xiaochu.yh
# owner group: SQL1
# description: OUR GOAL: Make all this simple and effective!
#--real_sleep 30
connect (conn_admin, $OBMYSQL_MS0,admin,$OBMYSQL_PWD,test,$OBMYSQL_PORT);
connection conn_admin;
alter system flush plan cache global;
connection default;
--enable_metadata
--disable_abort_on_error
--disable_warnings
drop table if exists build_in_func_test_table;
#--enable_warnings
--result_format 4
# test substr()
create table build_in_func_test_table (varchar_c varchar(128) primary key, date_c datetime(6),v varchar(128));
insert into build_in_func_test_table values ('hello', '2012-11-01 19:14:32',null);
##full param
select substr(varchar_c, 1, 1) from build_in_func_test_table;
select substr(varchar_c, 0, 1) from build_in_func_test_table;
select substr(varchar_c, -1, 1) from build_in_func_test_table;
select substr(varchar_c, -5, 1) from build_in_func_test_table;
select substr(varchar_c, -6, 1) from build_in_func_test_table;
select substr(varchar_c, -100, 1) from build_in_func_test_table;
select substr(varchar_c, 3, 1) from build_in_func_test_table;
select substr(varchar_c, 5, 1) from build_in_func_test_table;
select substr(varchar_c, 6, 1) from build_in_func_test_table;
select substr(varchar_c, 6, -1) from build_in_func_test_table;
select substr(varchar_c, 5, -1) from build_in_func_test_table;
select substr(varchar_c, 4, -1) from build_in_func_test_table;
select substr(varchar_c, -1, -1) from build_in_func_test_table;
select substr(varchar_c, 0, 5) from build_in_func_test_table;
select substr(varchar_c, 0, 6) from build_in_func_test_table;
select substr(varchar_c, 0, 100) from build_in_func_test_table;
select substr(varchar_c, -6, 10) from build_in_func_test_table;
select substr(varchar_c, -5, 10) from build_in_func_test_table;
select substr(varchar_c, -5, 3) from build_in_func_test_table;
select substr(v,5,10) from build_in_func_test_table;
select substr(varchar_c,null,10) from build_in_func_test_table;
select substr(varchar_c,2,null) from build_in_func_test_table;
##default length
select substr(varchar_c, -6) from build_in_func_test_table;
select substr(varchar_c, -5) from build_in_func_test_table;
select substr(varchar_c, -4) from build_in_func_test_table;
select substr(varchar_c, -0) from build_in_func_test_table;
select substr(varchar_c, 1) from build_in_func_test_table;
select substr(varchar_c, 2) from build_in_func_test_table;
select substr(varchar_c, 5) from build_in_func_test_table;
select substr(varchar_c, 6) from build_in_func_test_table;
select substr(varchar_c,null) from build_in_func_test_table;
select substr(v,1) from build_in_func_test_table;
##cast test
select substr(cast(date_c as char(1024)), 0) from build_in_func_test_table;
select substr(cast(date_c as char(1024)), 10) from build_in_func_test_table;
select substr(cast(1024 as char(1024)), 1, 2) from build_in_func_test_table;
select substr(cast(date_c as char(1024)) from 10) from build_in_func_test_table;
select substr(cast(date_c as char(1024)) from 10 for 10) from build_in_func_test_table;
# coalesce test
select coalesce(cast(null as signed int), null) from build_in_func_test_table;
select coalesce(null, 'monkey59', 123) from build_in_func_test_table;
select coalesce('jasimin', null, 'a,a', 123) from build_in_func_test_table;
select coalesce(cast(null as signed int), null, 32.23) from build_in_func_test_table;
# to lower/upper case
select lower('ABC&*03_+abc') from build_in_func_test_table;
select lower(varchar_c) from build_in_func_test_table;
select lower(null) from build_in_func_test_table;
select upper('ABC&*03_+abc') from build_in_func_test_table;
select upper(varchar_c) from build_in_func_test_table;
select upper(null) from build_in_func_test_table;
# cast to test
select cast(12 as datetime) from build_in_func_test_table;
select cast('12' as datetime) from build_in_func_test_table;
select cast(cast('1970-01-01 08:00:12' as datetime) as signed int) from build_in_func_test_table;
select cast('1970-01-01 08:00:12' as signed int) from build_in_func_test_table;
select cast(cast('12' as decimal) as datetime) from build_in_func_test_table;
select cast(cast('12' as decimal) as datetime) from build_in_func_test_table;
select cast(cast('12' as decimal) as datetime) from build_in_func_test_table;
select cast(v as signed int) from build_in_func_test_table;
# trim function
select trim('aba' from 'ababa') from build_in_func_test_table;
select length(trim('aba' from 'aba')) from build_in_func_test_table;
select trim('aba' from 'aba') from build_in_func_test_table;
select trim(' hello ') from build_in_func_test_table;
select trim('h' from 'hhhhello!') from build_in_func_test_table;
select trim('o!' from 'hhhhello!') from build_in_func_test_table;
select trim('h' from 'hhhhaaaahhhh') from build_in_func_test_table;
select trim(LEADING 'h' from 'hhhhaaaahhhh') from build_in_func_test_table;
select trim(TRAILING 'h' from 'hhhhaaaahhhh') from build_in_func_test_table;
select trim(BOTH 'h' from 'hhhhaaaahhhh') from build_in_func_test_table;
select trim(BOTH from ' hhhhaaaa ') from build_in_func_test_table;
select trim(123 from 123542) from build_in_func_test_table;
select trim(2 from cast(12312312 as datetime)) from build_in_func_test_table;
select length(trim(' hi' || 'dir ')) from build_in_func_test_table;
select trim(1) from build_in_func_test_table;
select trim(cast(111 as char(1024))) from build_in_func_test_table;
select trim(LEADING '1' from cast(111 as char(1024))) from build_in_func_test_table;
select trim(TRAILING '1' from cast(111 as char(1024))) from build_in_func_test_table;
select trim(v) from build_in_func_test_table;
select trim(leading v from 'v'),trim(leading varchar_c from 'he') from build_in_func_test_table;
#utc_timestamp function
set timestamp = 1456986986;
select cast(current_timestamp() as signed int) - cast(utc_timestamp() as signed int) from build_in_func_test_table;
select cast(now() as signed int) - cast(utc_timestamp() as signed int) from build_in_func_test_table;
select cast(utc_timestamp() as signed int)-cast(utc_timestamp() as signed int) from build_in_func_test_table;
#time_to_usec
select time_to_usec(current_timestamp()) - time_to_usec(utc_timestamp()) from build_in_func_test_table;
select time_to_usec(now()) - time_to_usec(utc_timestamp()) from build_in_func_test_table;
select time_to_usec(utc_timestamp())-time_to_usec(utc_timestamp()) from build_in_func_test_table;
set timestamp = 0;
#usec_to_time
select usec_to_time(12) from build_in_func_test_table;
select usec_to_time(65535) from build_in_func_test_table;
#date_add function
#--error 158
select date_add('invalid date string', INTERVAL 1 DAY) from build_in_func_test_table;
#--error 158
select date_add('2003-08', INTERVAL 1 DAY) from build_in_func_test_table;
select date_add('www 2013\09>23?12&&00^^^00', INTERVAL 1 DAY) from build_in_func_test_table;
select date_add('www 2013/**/09>23?12&&00^^^00', INTERVAL 1 DAY) from build_in_func_test_table;
select date_add('2013-09-23 12:00:00', INTERVAL 1 DAY) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 MICROSECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 SECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 minute) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 HOUR) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 DAY) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 MONTH) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 QUARTER) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL 1 YEAR) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '3.2' SECOND_MICROSECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '3:5.2' MINUTE_MICROSECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '3:5' MINUTE_SECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '8:7:3.5' HOUR_MICROSECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '8:7:3' HOUR_SECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '8:7' HOUR_MINUTE) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '2 8:7:6.5' DAY_MICROSECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '2 8:7:6' DAY_SECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '2 8:7' DAY_MINUTE) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '2 8' DAY_HOUR) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '12-25' YEAR_MONTH) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '2 3' DAY_MICROSECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '2 3' DAY_HOUR) from build_in_func_test_table;
select date_add('2013-09-23', interval length('date_add function') hour) from build_in_func_test_table;
select date_add(date_add('2013-09-23', INTERVAL '2' DAY),INTERVAL 5 HOUR) from build_in_func_test_table;
select date_add('2013-09-25', INTERVAL '2 &&& 8 *** 9' DAY_SECOND) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '-2 3' DAY_HOUR) from build_in_func_test_table;
select date_add('2013-09-23', INTERVAL '-2-3' DAY_MICROSECOND) from build_in_func_test_table;
select date_add('10-09-23', INTERVAL '2 3' DAY_HOUR) from build_in_func_test_table;
select date_add('80-09-24', INTERVAL '2 3' DAY_HOUR) from build_in_func_test_table;
select date_add('1970-01-01 08:00:00', INTERVAL -1 MICROSECOND) from build_in_func_test_table;
select date_add('1970-01-01 07:59:59.2', INTERVAL 800000 MICROSECOND) from build_in_func_test_table;
select date_add('1970-01-01 00:00:00', INTERVAL 100 MICROSECOND) from build_in_func_test_table;
--error 1064
select date_add(CAST(-1 AS TIMESTAMP), INTERVAL 100 MICROSECOND) from build_in_func_test_table;
--error 1064
select date_add('1970-01-01 08:00:00', INTERVAL CAST(1000 AS CREATETIME) MICROSECOND) from build_in_func_test_table;
--error 1064
select date_add('1970-01-01 08:00:00', INTERVAL CAST(1000 AS MODIFYTIME) MICROSECOND) from build_in_func_test_table;
select date_add(NULL, INTERVAL 1 DAY);
select date_add('1970-01-01 08:00:00', INTERVAL NULL MICROSECOND) from build_in_func_test_table;
#date_sub function
#--error 158
select date_sub('invalid date string', INTERVAL 1 DAY) from build_in_func_test_table;
#--error 158
select date_sub('2003-08', INTERVAL 1 DAY) from build_in_func_test_table;
select date_sub('www 2013\09>23?12&&00^^^00', INTERVAL 1 DAY) from build_in_func_test_table;
select date_sub('www 2013/**/09>23?12&&00^^^00', INTERVAL 1 DAY) from build_in_func_test_table;
select date_sub('2013-09-23 12:00:00', INTERVAL 1 DAY) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 MICROSECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 SECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 minute) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 HOUR) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 WEEK) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 DAY) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 MONTH) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 QUARTER) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL 1 YEAR) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '3.2' SECOND_MICROSECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '3:5.2' MINUTE_MICROSECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '3:5' MINUTE_SECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '8:7:3.5' HOUR_MICROSECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '8:7:3' HOUR_SECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '8:7' HOUR_MINUTE) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '2 8:7:6.5' DAY_MICROSECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '2 8:7:6' DAY_SECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '2 8:7' DAY_MINUTE) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '2 8' DAY_HOUR) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '12-25' YEAR_MONTH) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '21-25' YEAR_MONTH) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '2 3' DAY_MICROSECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '2 3' DAY_HOUR) from build_in_func_test_table;
select date_sub('2013-09-23', interval length('date_add function') hour) from build_in_func_test_table;
select date_sub(date_sub('2013-09-23', INTERVAL '2' DAY),INTERVAL 5 HOUR) from build_in_func_test_table;
select date_sub('2013-09-25', INTERVAL '2 &&& 8 *** 9' DAY_SECOND) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '-2 3' DAY_HOUR) from build_in_func_test_table;
select date_sub('2013-09-23', INTERVAL '-2-3' DAY_MICROSECOND) from build_in_func_test_table;
select date_sub('10-09-23', INTERVAL '2 3' DAY_HOUR) from build_in_func_test_table;
select date_sub('80-09-24', INTERVAL '2 3' DAY_HOUR) from build_in_func_test_table;
select date_sub('1970-01-01 08:00:00', INTERVAL 1 MICROSECOND) from build_in_func_test_table;
select date_sub('1970-01-01 00:00:00', INTERVAL 100 MICROSECOND) from build_in_func_test_table;
select date_sub(USEC_TO_TIME(0), INTERVAL 100 MICROSECOND) from build_in_func_test_table;
select date_sub(NULL, INTERVAL 1 DAY) from build_in_func_test_table;
select date_sub('1970-01-01 08:00:00', INTERVAL NULL DAY) from build_in_func_test_table;
#extract(unit FROM date)
select extract(MICROSECOND FROM '2012-09-01 10:35:07:99999') FROM build_in_func_test_table;
select extract(SECOND FROM '2012-09-01 10:35:07:99999') FROM build_in_func_test_table;
select extract(MINUTE FROM '2012-09-01 10:35:07:99999') FROM build_in_func_test_table;
select extract(HOUR FROM '2012-09-01 10:35:07:99999') FROM build_in_func_test_table;
select extract(DAY FROM '2012-09-01 10:35:07:99999') FROM build_in_func_test_table;
select extract(WEEK FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(MONTH FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(QUARTER FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(YEAR FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(SECOND_MICROSECOND FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(MINUTE_MICROSECOND FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(MINUTE_SECOND FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(HOUR_MICROSECOND FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(DAY_MICROSECOND FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(DAY_SECOND FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(HOUR_SECOND FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(DAY_MINUTE FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(DAY_MINUTE FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(DAY_HOUR FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(YEAR_MONTH FROM '2012-09-01 10:35:07:99999') from build_in_func_test_table;
select extract(MICROSECOND FROM '2012-09-01') from build_in_func_test_table;
select extract(QUARTER FROM '2012-02-01') from build_in_func_test_table;
select extract(QUARTER FROM '2012-05-01') from build_in_func_test_table;
select extract(QUARTER FROM '2012-07-01') from build_in_func_test_table;
select extract(QUARTER FROM '2012-10-01') from build_in_func_test_table;
select extract(QUARTER FROM '2012-11-01') from build_in_func_test_table;
select extract(WEEK FROM '2012-01-01') from build_in_func_test_table;
select extract(WEEK FROM '2012-05-30') from build_in_func_test_table;
select extract(WEEK FROM '2012-06-15') from build_in_func_test_table;
select extract(WEEK FROM '2012-10-25') from build_in_func_test_table;
select extract(WEEK FROM '2013-01-01') from build_in_func_test_table;
select extract(WEEK FROM '2019-03-09') from build_in_func_test_table;
select extract(YEAR FROM '12-09-02') from build_in_func_test_table;
#select extract(YEAR FROM '99-09-06') from build_in_func_test_table;
--error 1064
select extract(HOUR FROM CAST('0' AS TIMESTAMP)) from build_in_func_test_table;
select extract(HOUR FROM NULL) from build_in_func_test_table;
#date_format(date, format)
select date_format('2007-10-04 22:23:10.567', '%H:%i:%s');
select date_format(timestamp'2007-10-04 22:23:10.567', '%H:%i:%s');
select date_format('2007-10-04 22:23:10.567', '%H %k %I %r %T %S %w');
select date_format('2007-10-04 22:23:10.567', '%c %d %e %f %H %h %I %i %j %k %l %m %p %r %S %s %T %U %u %V %v %w %X %x %Y %y %%');
#test week count
--echo 2007-01-01 year_day=week_day=1
select date_format('2007-01-01', '%U %u %V-%X %v-%x');
--echo 2013-01-01 year_day=1, week_day=2 the critical week in this year
select date_format('2013-01-01', '%U %u %V-%X %v-%x');
--echo 2015-01-01 year_day=1, week_day=4 the critical week in last year when start with sunday, in this year when start with monday
select date_format('2015-01-01', '%U %u %V-%X %v-%x');
--echo 2014-12-31 year_day=365, week_day=3 thi critical week in this year when start with sunday, in next year when start with monday
select date_format('2014-12-31', '%U %u %V-%X %v-%x');
select date_format('2014-04-24', '%U %u %V-%X %v-%x');
select date_format('2014-09-24', NULL);
select date_format(NULL, '%U %u %V-%X %v-%x');
#str_to_date(date, format)
select str_to_date('1970-02-03', '%Y-%m-%d');
#--error 158
#select str_to_date('04/31/2004', '%m/%d/%Y');
select str_to_date('04/30/2004 10:23:24.789', '%m/%d/%Y %T.%f');
select str_to_date('4/30/2013 PM 09:25:45', '%m/%e/%Y %p %h:%i:%S');
select str_to_date('1970-02-03 10:56:56', '%Y-%m-%d %T');
select str_to_date(NULL, '%Y-%m-%d %T');
select str_to_date('1970-02-03 10:56:56', NULL);
#all in all test
select coalesce(length(lower(null)), length(lower(upper('yssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxddsd'))), length('dir')) from build_in_func_test_table;
select 'NAME:'||varchar_c,'ADDR:'||v from build_in_func_test_table;
drop table build_in_func_test_table;
#test date_format
#--disable_warnings
drop table if exists test_0;
#--enable_warnings
create table test_0 (test_id varchar(10) primary key,name varchar(20),create_date timestamp(6) default "2012-01-01 12:00:00");
insert into test_0 values('13','12','2014-03-21');
select test_id,name,DATE_FORMAT(create_date,'%Y-%m-%d') as value from test_0;
select test_id,name,DATE_FORMAT(create_date,'%Y-%m-%d') as value from test_0 where test_id='13';
select test_id,name,DATE_FORMAT(create_date,'%Y-%m-%d') as value from test_0 where test_id='12';
select test_id,name,DATE_FORMAT(create_date,'%Y-%m-%d') as value from test_0 where test_id='13' and name='12';
select test_id,name,DATE_FORMAT(create_date,'%Y-%m-%d') as value from test_0 where test_id='13' and name='11';
select test_id,name,DATE_FORMAT(create_date,'%Y-%m-%d') as value from test_0 where test_id='11';
#--disable_warnings
drop table if exists test_format;
#--enable_warnings
create table test_format (datetest varchar(50), pk int primary key);
insert into test_format values(date_FORMAT('2003-01-02 10:11:12', '%Y-%m-%d %H:%i:%S'),1);
insert into test_format values(date_FORMAT('2003-01-02 10:11:12', '%Y-%m-%d %H:%i:%S'),2);
insert into test_format values(date_FORMAT('03-01-02 8:11:2.123456', '%y-%m-%d %H:%i:%S'),3);
insert into test_format values(date_FORMAT('0003-01-02 8:11:2.123456', '%Y-%m-%d %H:%i:%S'),4);
insert into test_format values(date_FORMAT('03-01-02 8:11:2.123456', '%Y-%m-%d %H:%i:%S'),5);
#insert into test_format values(date_FORMAT('2003-01-02 10:11:12 PM', '%Y-%m-%d %h:%i:%S %p'),6);
insert into test_format values(date_FORMAT('2003-01-02 01:11:12.12345AM', '%Y-%m-%d %h:%i:%S.%f%p'),7);
insert into test_format values(date_FORMAT('2003-01-02 02:11:12.12345AM', '%Y-%m-%d %h:%i:%S.%f %p'),8);
insert into test_format values(date_FORMAT('2003-01-02 12:11:12.12345 am', '%Y-%m-%d %h:%i:%S.%f%p'),9);
insert into test_format values(date_FORMAT('2003-01-02 11:11:12Pm', '%Y-%m-%d %h:%i:%S%p'),10);
insert into test_format values(date_FORMAT('2003-01-02 10:20:10', '%Y-%m-%d %H:%i:%s'),11);
insert into test_format values(date_FORMAT('2003-01-02 10:20:10', '%Y-%m-%d %h:%i:%s.%f'),12);
insert into test_format values(date_FORMAT('2003-01-02 10:20:10', '%Y-%m-%d %T'),13);
insert into test_format values(date_FORMAT('2003-01-02 10:20:10AM', '%Y-%m-%d %h:%i:%s%p'),14);
insert into test_format values(date_FORMAT('2003-01-02 10:20:10AM', '%Y-%m-%d %r'),15);
insert into test_format values(date_FORMAT('2003-01-02 10:20:10.44AM', '%Y-%m-%d %h:%i:%s.%f%p'),16);
select * from test_format;
#--disable_warnings
drop table if exists t1;
#--enable_warnings
create table t1 (date1 char(30) primary key, format char(30) not null);
insert into t1 values
('2003-01-02 10:11:12', '%Y-%m-%d %H:%i:%S'),
('03-01-03 8:11:2.123456', '%y-%m-%d %H:%i:%S'),
('0003-01-04 8:11:2.123456', '%Y-%m-%d %H:%i:%S'),
('03-01-05 8:11:2.123456', '%Y-%m-%d %H:%i:%S'),
('2003-01-04 10:11:12 PM', '%Y-%m-%d %h:%i:%S %p'),
('2003-01-02 01:11:12.12345AM', '%Y-%m-%d %h:%i:%S.%f%p'),
('2003-01-03 02:11:12.12345AM', '%Y-%m-%d %h:%i:%S.%f %p'),
('2003-01-02 12:11:12.12345 am', '%Y-%m-%d %h:%i:%S.%f%p'),
('2003-01-02 11:11:12Pm', '%Y-%m-%d %h:%i:%S%p');
#--disable_warnings
drop table if exists t1;
#--enable_warnings
create table t1 (d timestamp primary key);
insert into t1 values ('2004-07-14'),('2005-07-14');
select date_format(d,'%d') from t1 order by 1;
select date_format(d,'%e') from t1 order by 1;
select date_format(d,'%D') from t1 order by 1;
drop table t1;
select date_format('2004-01-01','%W (%a), %e %M (%b) %Y');
create table t1 (f1 datetime primary key);
insert into t1 (f1) values ('2005-01-01');
insert into t1 (f1) values ('2005-02-01');
select date_format(f1, '%m') as d1, date_format(f1, '%M') as d2 from t1 order by date_format(f1, '%M');
###temp add error num 5086
#--error 5086
select date_format(f1, '%m') as d1, date_format(f1, '%M') as d2 from t1 where f1='2013' order by date_format(f1, '%M') ;
#--error 158
SELECT DATE_FORMAT('2014-01-01 24:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 00:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 12:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 15:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 01:00:00', '%r');
#--error 158
SELECT DATE_FORMAT('2014-01-01 25:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 00:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 01:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 12:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 23:00:00', '%l %p');
#--error 158
SELECT DATE_FORMAT('2014-01-01 24:00:00', '%l %p');
#--error 158
SELECT DATE_FORMAT('2014-01-01 25:00:00', '%l %p');
#--error 4002
SELECT DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896);
#--error 158
SELECT DATE_FORMAT('0000-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('0001-01-01','%W %d %M %Y') as valid_date;
#--error 158
SELECT DATE_FORMAT('-0001-01-01','%W %d %M %Y') as valid_date;
#--error 158
SELECT DATE_FORMAT('-4713-01-01','%W %d %M %Y') as valid_date;
#--error 158
SELECT DATE_FORMAT('-4712-01-01','%W %d %M %Y') as valid_date;
#--error 158
SELECT DATE_FORMAT('-4714-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('9999-01-01','%W %d %M %Y') as valid_date;
#--error 158
SELECT DATE_FORMAT('10000-01-01','%W %d %M %Y') as valid_date;
#--error 158
SELECT DATE_FORMAT('0000-02-28','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('0001-02-28','%W %d %M %Y') as valid_date;
# show that date within the Gregorian range render correct results: (THU)
SELECT DATE_FORMAT('2009-01-01','%W %d %M %Y') as valid_date;
SELECT CAST(DATE_FORMAT(NULL, '%s') AS CHAR);
SELECT CAST(DATE_FORMAT(NULL, '%s') AS DECIMAL(23,6));
SELECT CAST(DATE_FORMAT(NULL, '%s') AS DATETIME);
#--error 5114
SELECT DATE_FORMAT(NULL, '%s')+0e0;
drop table t1;
select str_to_date('2003-01-02', '%Y-%m-%d') as f3;
#--disable_warnings
drop table if exists t1;
#--enable_warnings
create table t1 (f1 varchar(20) primary key);
insert into t1 (f1) values ('2005-01-01');
insert into t1 (f1) values ('2005-02-01');
select str_to_date(f1,'%Y-%m-%d') from t1 where f1='2005-01-01';
select str_to_date(f1,'%Y-%m-%d') from t1 where f1='2005-01-03';
select str_to_date('04 /30/2004', '%m /%d/%Y');
select str_to_date('04/30 /2004', '%m /%d /%Y');
select str_to_date('04/30/2004 ', '%m/%d/%Y ');
#select cast(1.1234 as decimal(12,2));
#--error 16
#select date_add(str_to_date(substr('2014-06-05 16:24:54.270374',1,8),'%Y%m%d'),interval 2 day);
#--error 16
#select str_to_date('2014-06-','%Y%m%d');
#--error 5085
select '+' + 1;
#--error 5085
select '-' + 1;
#--error 5085
select '.' + 1;
#--error 5085
select '_' + 1;
#--error 5085
select '~' + 1;
#--error 5085
select '@' + 1;
#--error 5085
select '#' + 1;
#--error 5085
select '%' + 1;
#--error 5085
select '^' + 1;
#--error 5085
select '$%%%' + 1;
#--error 5085
select '(' + 1;
#--error 5085
select ')' + 1;
#--error 5085
select '=' + 1;
#--error 5085
select '{' + 1;
#--error 5085
select '}' + 1;
#--error 5085
select '|' + 1;
#--error 5085
select '\'' + 1;
#--error 5085
select '"' + 1;
#--error 5085
select ':' + 1;
#--error 5085
select '<' + 1;
#--error 5085
select '>' + 1;
#--error 5085
select '?' + 1;
#--error 5085
select '/' + 1;
#--error 5085
select '!@##' + 1;
#--error 5085
select '$^^%%^$%(*&^(*^&*^&)' + 1;
select concat(NULL, 'aaa');
select concat('aaa', NULL);
select concat('aaa','');
select concat('','aaa');
select 1.1/0.0;
#test dump
select dump(1.1);
select dump(1);
select round(1.1234, 3);
select round(1.1234);
select false is true;
select NULL is true;
select true is true;
select true is not true;
select NULL is NULL;
select NULL is not NULL;
select true is false;
#--error 5085
select -'aaa';
#test null and time func
select DATE_ADD(null, INTERVAL 5 DAY);
select DATE_sub(null, INTERVAL 5 DAY);
select STR_TO_DATE(null, '%Y-%m-%d');
select DATE_FORMAT(null, '%Y/%m/%D');
select time_to_usec(null);
select usec_to_time(null);
select EXTRACT(DAY FROM null);
####test abs func
select abs(10);
select abs(-10);
select abs(-0);
select abs(0);
select abs(1);
select abs(-1);
select abs(-1000000000000);
select abs(1000000000000);
select abs(0.1);
select abs(-0.1);
select abs(-11.10);
select abs(null);
select abs(NULL);
select abs(Null);
select abs(5-5);
select abs(-0.1*3);
####test:unhex
select unhex('434445');
select unhex('C434445');
select unhex(repeat('4',100));
#select unhex(repeat('a',101));
select unhex(repeat('1',400));
#select unhex(repeat('b',401));
select unhex(null);
select unhex('123');
select unhex(cast(repeat('123',5) as char(1024)));
select unhex('');
select unhex(repeat('',10));
###substr+like
select SUBSTR( 'Sat' FROM 3 ) , SUBSTR( 'Sat' FROM 3 ) LIKE '%a_';
###date
select DATE_FORMAT( '2014-12-31 19:54:55.000002', '%x%v' ) , DATE_FORMAT( '2023-12-31 19:54:55.000002', '%x%v' );
###nvl
#--disable_warnings
drop table if exists t1;
#--enable_warnings
create table t1 (a bigint, b datetime(6));
insert into t1 values(1,now());
select a from t1 where nvl(null,b) <= now();
select a from t1;
select !w, !!w, !(!w), ! !w, not w, not not w, w is true, w is not false, (not w) is false, not(w is false), if(w,'true','false'), !1+1, !'a', !false, !isnull('a'), !!isnull('a') from (select 0 w union select 1) w;
--enable_metadata

View File

@ -0,0 +1,78 @@
--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
# owner: xiaochu.yh
# owner group: SQL1
# Test of functions
connect (conn_admin, $OBMYSQL_MS0,admin,$OBMYSQL_PWD,test,$OBMYSQL_PORT);
connection conn_admin;
alter system flush plan cache global;
connection default;
--enable_metadata
select 3;
select 3.4;
select 3.000000000000000000000000001;
select -3;
select -3.4;
select -3.000000000000000000000000001;
select 1, 11, 111, 1111, 11111, 111111, 1111111, 11111111, 111111111, 1111111111,11111111111, 111111111111;
select TIMESTAMP '2012-12-31 11:30:45', TIMESTAMP '2012-12-31 11:30:45.1', TIMESTAMP '2012-12-31 11:30:45.11', TIMESTAMP '2012-12-31 11:30:45.111', TIMESTAMP '2012-12-31 11:30:45.1111', TIMESTAMP '2012-12-31 11:30:45.11111', TIMESTAMP '2012-12-31 11:30:45.111111';
select TIME '11:30:45', TIME '11:30:45.111111', TIME '11:30:45.11111', TIME '11:30:45.1111', TIME '11:30:45.111', TIME '11:30:45.11', TIME '11:30:45.1';
select date '1998-09-09';
select TIMESTAMP '2012-2-1 11:30:45';
select TIME '11:5:45';
select date '1998-9-9';
SELECT X'4D7953514C';
#SELECT 0x0a+0;
SELECT 0x5061756c;
SELECT 0x636174;
SELECT TRUE, true, FALSE, false;
select 'abcde';
select '我爱你';
select '我e爱a你t';
select '';
select ' ';
select '0x10';
select '0810';
--disable_warnings
drop table if exists t1;
--enable_warnings
create table t1(f1 datetime(6));
insert into t1 values('01-01-01'),('02-02-02'),('01-01-01'),('02-02-02');
set @bug28261='';
select if(@bug28261 = f1, '', @bug28261:= f1) from t1;
drop table t1;
--disable_metadata
--enable_metadata
--disable_warnings
drop table if exists tt;
--enable_warnings
CREATE TABLE if not exists tt(aa int);
select count(*) as cnt from tt a ;
select sum(cnt) from(select count(*) as cnt from tt a ) c;
--disable_warnings
drop table if exists obright;
--disable_warnings
create table obright(row_id bigint, dec3 decimal(16,6));
select dec3 mod (case when row_id > 0 then dec3 else 1 end) from obright;
select field(0,'a');
show warnings;
select field(1,'a', 'b');
show warnings;
select field(3,'a', 2, 'c');
show warnings;
--disable_metadata

View File

@ -0,0 +1,110 @@
# owner: xiaochu.yh
# owner group: SQL1
# Test of functions
connect (conn_admin, $OBMYSQL_MS0,admin,$OBMYSQL_PWD,test,$OBMYSQL_PORT);
connection conn_admin;
alter system flush plan cache global;
connection default;
--enable_metadata
--disable_warnings
drop table if exists tt;
--enable_warnings
create table tt(c tinyint);
select avg(c) from tt;
--disable_warnings
drop table if exists tt;
--enable_warnings
create table tt(c tinyint);
select 2*avg(c) from tt;
--disable_warnings
drop table if exists tt;
--enable_warnings
create table tt(c tinyint);
insert into tt values(19),(20);
select 2*avg(c) from tt;
select str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 1;
select str_to_date('1970-01-02','%Y-%m-%d %H:%i:%s') + 10000;
select str_to_date('1970-01-02',null) + 100;
select str_to_date('1970-01-02','null') + 100;
select str_to_date('1970-01-02',0)+ 1;
select str_to_date('1970-01-02', 23) +10;
select str_to_date('1970-01-02 12:23:32','%Y-%m-%d %H:%i:%s')+ 10000;
select str_to_date('1970-01-02 12:23:32','%Y-%m-%d')+ 10000;
select str_to_date('12:23:32','%H:%i:%s')+ 10000;
select str_to_date('12:23:32',10)+ 10000;
--disable_warnings
drop table if exists t1, t2, t3, t3k;
--enable_warnings
CREATE TABLE t1 (EMPNUM INT);
INSERT INTO t1 VALUES (0), (2);
CREATE TABLE t2 (EMPNUM DECIMAL (4, 2));
INSERT INTO t2 VALUES (0.0), (9.0);
SELECT IFNULL(t2.EMPNUM,t1.EMPNUM) AS CEMPNUM
FROM t1 LEFT JOIN t2 ON t1.EMPNUM=t2.EMPNUM;
create table t3(a int, b decimal, c varchar(10));
select ifnull(0, 0.0);
insert into t3 values(0, 2.4, "123");
select ifnull(a, b), ifnull(a, c) from t3;
drop table t1,t2, t3;
create table t3k(c1 timestamp(6), c2 datetime(5), c3 timestamp(3), c4 datetime(5), c5 datetime(2));
#insert into t3k values(time '23:13:30' ,time '23:13:30');
select UNIX_TIMESTAMP(c1), UNIX_TIMESTAMP(c2), UNIX_TIMESTAMP(c3), UNIX_TIMESTAMP(c4), UNIX_TIMESTAMP(c5) from t3k;
drop table t3k;
--disable_warnings
drop table if exists t1, t2, t3, t3k;
drop view if exists v1;
--enable_warnings
CREATE TABLE t1 (a DATETIME NOT NULL);
INSERT INTO t1 VALUES ('2009-09-20 07:32:39.06');
INSERT INTO t1 VALUES ('0000-00-00 00:00:00.00');
CREATE VIEW v1 AS SELECT * FROM t1;
SELECT CAST(UNIX_TIMESTAMP(a) AS DECIMAL(25,3)) AS c1 FROM v1 ORDER BY 1;
CREATE TABLE t2 (a VARCHAR(32) NOT NULL);
INSERT INTO t2 VALUES ('a');
SELECT 1 FROM t2 GROUP BY @a:=UNIX_TIMESTAMP(a);
SELECT a, UNIX_TIMESTAMP(a), UNIX_TIMESTAMP('a') FROM t2;
SELECT a, UNIX_TIMESTAMP(a), UNIX_TIMESTAMP('5000-01-01 00:00:00') FROM t2;
--disable_query_log
--disable_result_log
--disable_warnings
drop table if exists tbl1;
--enable_warnings
--enable_query_log
--enable_result_log
create table tbl1(a datetime(5),b date,c timestamp, d double);
set time_zone='-3:00';
insert into tbl1 values("2010-01-01 11:22:33","2010-10-01","2010-01-01 11:22:33",3302747.4167);
insert into tbl1 values(20100101112233,20101001,20100101112233,3302747.4167);
set time_zone='+4:00';
select UNIX_TIMESTAMP(a),UNIX_TIMESTAMP(b),UNIX_TIMESTAMP(c),UNIX_TIMESTAMP(d) from tbl1;
select UNIX_TIMESTAMP(1);
select UNIX_TIMESTAMP("1");
select UNIX_TIMESTAMP("2010-01-01 11:22:33");
select UNIX_TIMESTAMP(20100101112233);
drop table t1, t2, tbl1;
drop view v1;
--disable_metadata

View File

@ -0,0 +1,54 @@
--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
# owner: zuojiao.hzj
# owner group: SQL1
# description: OUR GOAL: Make all this simple and effective!
#/--disableabortonerror/
#/test for ceil function in ob_expr_func_ceil.cpp/
connect (conn_admin, $OBMYSQL_MS0,admin,$OBMYSQL_PWD,test,$OBMYSQL_PORT);
connection conn_admin;
alter system flush plan cache global;
connection default;
--enable_metadata
--disable_abort_on_error
--disable_warnings
select ceil(3.1415926);
select ceil(-3.1415926);
select ceil(0.00);
select ceil(-0.0);
select ceil(0.123456789);
select ceil(-0.123456789);
select ceil(123456789.123456789);
select ceil(-99999999.999999999);
select ceil(999999999.123456789);
select ceil(-999999999.123456789);
select ceil(-123456789123456789123456789.123456789);
select ceil(123456789123456789123456789123456789123456789123456789.123456789);
select ceil(-123456789123456789123456789123456789123456789123456789.123456789);
select ceil(123456789123456789123456789.123456789123456789123456789123456789);
select ceil(-123456789123456789123456789.123456789123456789123456789123456789);
select ceil(-123456789123456789123456789.123456789);
select ceil(999999999999999999999999999999999999999999999.499999999);
select ceil(999999999999999999999999999999999999999999999.500000001);
select ceil(99999999999999999999999999999999999999999999.399999999);
select ceil(-99999999999999999999999999999999999999999999.399999999);
select ceil(-99999999999999999999999999999999999999999999.399999999);
select ceil(999999999999999999999999999999999999999999999211111.399999999);
select ceil(-999999999999999999999999999999999999999999999211111.399999999);
select ceil(-999999999999999999999999999999999999999999999511111.399999999);
select ceil(-999999999999999999999999999999999999999999999499999.399999999);
select ceil(-1);
select floor(-1);
select ceil(-161);
select floor(-161);
select ceil(null);
select floor(null);
select floor(1+null*5);

View File

@ -0,0 +1,123 @@
--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
# owner: zuojiao.hzj
# owner group: SQL1
# description: OUR GOAL: Make all this simple and effective!
#/--disableabortonerror/
#/test for floor function in ob_expr_func_floor.cpp/
connect (conn_admin, $OBMYSQL_MS0,admin,$OBMYSQL_PWD,test,$OBMYSQL_PORT);
connection conn_admin;
alter system flush plan cache global;
connection default;
--enable_metadata
--disable_abort_on_error
--disable_warnings
--enable_abort_on_error
select 1.345;
select round(1.345);
select -13.544;
select round(-13.544);
select round(0.0);
--disable_warnings
drop table if exists t1;
--enable_warnings
create table t1(a int);
insert into t1 values(10);
select round(a + 0.5) from t1;
select round(a + 0.4) from t1;
drop table t1;
select floor(null);
select ceil(null);
select floor(-123);
select floor(-123.123);
select floor(123);
select ceil(-1234.1223);
select ceil(-123);
select ceil(123);
select floor(3.1415926);
select floor(-3.1415926);
select floor(0.00);
select floor(-0.0);
select floor(0.123456789);
select floor(-0.123456789);
select floor(123456789.123456789);
select floor(-99999999.999999999);
select floor(999999999.123456789);
select floor(-999999999.123456789);
select floor(-123456789123456789123456789.123456789);
select floor(123456789123456789123456789123456789123456789123456789.123456789);
select floor(-123456789123456789123456789123456789123456789123456789.123456789);
select floor(123456789123456789123456789.123456789123456789123456789123456789);
select floor(-123456789123456789123456789.123456789123456789123456789123456789);
select floor(-123456789123456789123456789.123456789);
select floor(999999999999999999999999999999999999999999999.499999999);
select floor(999999999999999999999999999999999999999999999.500000001);
select floor(99999999999999999999999999999999999999999999.399999999);
select floor(-99999999999999999999999999999999999999999999.399999999);
select floor(-99999999999999999999999999999999999999999999.399999999);
select floor(999999999999999999999999999999999999999999999211111.399999999);
select floor(-999999999999999999999999999999999999999999999211111.399999999);
select floor(-999999999999999999999999999999999999999999999511111.399999999);
select floor(-999999999999999999999999999999999999999999999499999.399999999);
select CEIL(109.19) ceil_val,FLOOR(109.19) floor_val from dual;
select ceil( 10.00000000001 ) from dual;
select ceil( -1.99 )from dual;
select ceil( -1.9999999999999999999999999999999999999999111111111 )from dual;
select ceil( -1.999999999999999999999999999999999999999999999111111111 )from dual;
select floor(0.00000000000),ceil(0.00000);
select ceil( 10.00000000001 ) from dual;
--disable_warnings
drop table if exists tbl1;
--enable_warnings
create table tbl1 (i1 int, v2 varchar(80), i3 char(20),i4 float, d4 datetime(6),i5 decimal(5,3), primary key(i1));
insert into tbl1 values(1,'now','haha1',1.6256,'2014-05-04 12:00:00',-10.235);
insert into tbl1 values(2,'now','haha2',-1.6256,'2014-05-04 12:00:00',1.243);
insert into tbl1 values(3,'now','haha3',1.156,'2014-05-04 12:00:00',-1.45);
insert into tbl1 values(4,'now','haha1',5.9256,'2014-05-04 12:00:00',3.45);
insert into tbl1 values(5,'now1','haha2',1.2356,'2014-05-04 12:00:00',-0.25);
insert into tbl1 values(6,'now2','haha3',-10.4256,'2014-05-04 12:00:00',0.253);
insert into tbl1 values(7,'now3','haha4',0.6256,'2014-05-04 12:00:00',1.677);
select floor(i4),floor(i5) from tbl1;
select max(floor(i4)),max(floor(i5)) from tbl1;
select min(floor(i4)),min(floor(i5)) from tbl1;
select max(ceil(i4)),max(ceil(i5)) from tbl1;
select min(ceil(i4)),min(ceil(i5)) from tbl1;
select avg(ceil(i4)),avg(ceil(i5)) from tbl1;
select avg(ceil(i5)),avg(floor(i5)) from tbl1;
select sum(ceil(i4)),sum(ceil(i5)) from tbl1;
select count(ceil(i4)),count(ceil(i5)) from tbl1;
select ceil(count(ceil(i4))),floor(count(ceil(i5))) from tbl1;
select ceil(avg(ceil(i4))),floor(avg(ceil(i5))) from tbl1;
select ceil(avg(ceil(i4))),ceil(avg(ceil(i5))) from tbl1;
select * from tbl1 where floor(i4)=2;
select * from tbl1 where floor(i4)=ceil(i4)-1;
select * from tbl1 where floor(i1)=ceil(i1);
select floor(i1/10*8),i1/10*8 from tbl1;
select ceil(i1/10*8),i1/10*8 from tbl1;
select * from tbl1 order by floor(i4);
select * from tbl1 order by floor(i4) desc;
select floor(i4) abc from tbl1 order by abc desc;
select floor(v2) from tbl1;
select floor(i3) from tbl1;
select floor(d4) from tbl1;
--disable_warnings
drop table if exists tbl2;
--enable_warnings
create table tbl2 (i1 int, v2 varchar(80), primary key(i1));
insert into tbl2 values(1,'1');
insert into tbl2 values(2,'2.5');
insert into tbl2 values(3,'-3.2');
select floor(v2),ceil(v2) from tbl2;

View File

@ -0,0 +1,203 @@
#owner: guoping.wgp
#owner group: SQL1
--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
# owner: xiaochu.yh
# owner group: SQL1
# description: OUR GOAL: Make all this simple and effective!
##test retrun data type of func
connect (conn_admin, $OBMYSQL_MS0,admin,$OBMYSQL_PWD,test,$OBMYSQL_PORT);
connection conn_admin;
alter system flush plan cache global;
connection default;
--enable_metadata
--disable_abort_on_error
--disable_warnings
select repeat(' ',10);
####test:date func return type test
#extract(unit FROM date)
select extract(MICROSECOND FROM '2012-09-01 10:35:07:99999') ;
select extract(SECOND FROM '2012-09-01 10:35:07:99999') ;
select extract(MINUTE FROM '2012-09-01 10:35:07:99999') ;
select extract(HOUR FROM '2012-09-01 10:35:07:99999') ;
select extract(DAY FROM '2012-09-01 10:35:07:99999') ;
#date_format(date, format)
select date_format('2007-10-04 22:23:10.567', '%H:%i:%s');
select date_format(timestamp'2007-10-04 22:23:10.567', '%H:%i:%s');
select date_format('2007-10-04 22:23:10.567', '%H %k %I %r %T %S %w');
select date_format('2007-10-04 22:23:10.567', '%c %d %e %f %H %h %I %i %j %k %l %m %p %r %S %s %T %U %u %V %v %w %X %x %Y %y %%');
#test week count
--echo 2007-01-01 year_day=week_day=1
select date_format('2007-01-01', '%U %u %V-%X %v-%x');
--echo 2013-01-01 year_day=1, week_day=2 the critical week in this year
select date_format('2013-01-01', '%U %u %V-%X %v-%x');
--echo 2015-01-01 year_day=1, week_day=4 the critical week in last year when start with sunday, in this year when start with monday
select date_format('2015-01-01', '%U %u %V-%X %v-%x');
--echo 2014-12-31 year_day=365, week_day=3 thi critical week in this year when start with sunday, in next year when start with monday
select date_format('2014-12-31', '%U %u %V-%X %v-%x');
select date_format('2014-04-24', '%U %u %V-%X %v-%x');
select date_format('2014-09-24', NULL);
select date_format(NULL, '%U %u %V-%X %v-%x');
#str_to_date(date, format)
select str_to_date('1970-02-03', '%Y-%m-%d');
select str_to_date('04/31/2004', '%m/%d/%Y');
select str_to_date('04/30/2004 10:23:24.789', '%m/%d/%Y %T.%f');
select str_to_date('4/30/2013 PM 09:25:45', '%m/%e/%Y %p %h:%i:%S');
select str_to_date('1970-02-03 10:56:56', '%Y-%m-%d %T');
select str_to_date(NULL, '%Y-%m-%d %T');
select str_to_date('1970-02-03 10:56:56', NULL);
#all in all test
#test date_format
SELECT DATE_FORMAT('2014-01-01 24:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 00:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 12:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 15:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 01:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 25:00:00', '%r');
SELECT DATE_FORMAT('2014-01-01 00:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 01:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 12:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 23:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 24:00:00', '%l %p');
SELECT DATE_FORMAT('2014-01-01 25:00:00', '%l %p');
SELECT DATE_FORMAT('%Y-%m-%d %H:%i:%s', 1151414896);
SELECT DATE_FORMAT('0000-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('0001-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('-0001-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('-4713-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('-4712-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('-4714-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('9999-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('10000-01-01','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('0000-02-28','%W %d %M %Y') as valid_date;
SELECT DATE_FORMAT('0001-02-28','%W %d %M %Y') as valid_date;
# show that date within the Gregorian range render correct results: (THU)
SELECT DATE_FORMAT('2009-01-01','%W %d %M %Y') as valid_date;
SELECT CAST(DATE_FORMAT(NULL, '%s') AS CHAR);
SELECT CAST(DATE_FORMAT(NULL, '%s') AS DECIMAL(23,6));
SELECT CAST(DATE_FORMAT(NULL, '%s') AS DATETIME);
SELECT DATE_FORMAT(NULL, '%s')+0e0;
select str_to_date('2003-01-02', '%Y-%m-%d') as f3;
select str_to_date('04 /30/2004', '%m /%d/%Y');
select str_to_date('04/30 /2004', '%m /%d /%Y');
select str_to_date('04/30/2004 ', '%m/%d/%Y ');
#select cast(1.1234 as decimal(12,2));
select date_add(str_to_date(substr('2014-06-05 16:24:54.270374',1,8),'%Y%m%d'),interval 2 day);
select str_to_date('2014-06-','%Y%m%d');
select '+' + 1;
select '-' + 1;
select '.' + 1;
select '_' + 1;
select '~' + 1;
select '@' + 1;
select '#' + 1;
select '%' + 1;
select '^' + 1;
select '$%%%' + 1;
select '(' + 1;
select ')' + 1;
select '=' + 1;
select '{' + 1;
select '}' + 1;
select '|' + 1;
select '\'' + 1;
select '"' + 1;
select ':' + 1;
select '<' + 1;
select '>' + 1;
select '?' + 1;
select '/' + 1;
select '!@##' + 1;
select '$^^%%^$%(*&^(*^&*^&)' + 1;
select concat(NULL, 'aaa');
select concat('aaa', NULL);
select concat('aaa','');
select concat('','aaa');
select 1.1/0.0;
select __OB__MIN__ > 1;
select __OB__MIN__ < 1;
#test dump
select dump(1.1);
select dump(1);
select round(1.1234, 3);
select round(1.1234);
select false is true;
select NULL is true;
select true is true;
select true is not true;
select NULL is NULL;
select NULL is not NULL;
select true is false;
select -'aaa';
#test null and time func
select DATE_ADD(null, INTERVAL 5 DAY);
select DATE_sub(null, INTERVAL 5 DAY);
select STR_TO_DATE(null, '%Y-%m-%d');
select DATE_FORMAT(null, '%Y/%m/%D');
select time_to_usec(null);
select usec_to_time(null);
select EXTRACT(DAY FROM null);
####test abs func
select abs(10);
select abs(-10);
select abs(-0);
select abs(0);
select abs(1);
select abs(-1);
select abs(-1000000000000);
select abs(1000000000000);
select abs(0.1);
select abs(-0.1);
select abs(-11.10);
select abs(null);
select abs(NULL);
select abs(Null);
select abs(5-5);
select abs(-0.1*3);
select abs('10');
select abs('1');
select abs('100');
select abs('-100');
select abs('-100.001');
select abs(cast(-1.21 as decimal(10,5)));
select abs(cast(-1.21 as char(1024)));
select abs(cast(-1.21 as decimal(5,3)));
select abs(cast(-1.21 as numeric));
####test repeat func
select repeat ('1',10);
select repeat (1,10);
select repeat (null,10);
select repeat ('abc',10);
####test cast func
select cast(repeat('1',5) as signed int);
select repeat(substr('abcd',2),1);
####test length
select length(repeat(0xa1,215)), length(repeat(0x1a, 310));
select abs(true);
select floor(1);
select ceil(1);