1
select cast("A" as binary) = "a", cast(BINARY "a" as CHAR) = "A";
2
cast("A" as binary) = "a" cast(BINARY "a" as CHAR) = "A"
4
select cast("2001-1-1" as DATE), cast("2001-1-1" as DATETIME);
5
cast("2001-1-1" as DATE) cast("2001-1-1" as DATETIME)
6
2001-01-01 2001-01-01 00:00:00
7
select CONVERT("2004-01-22 21:45:33",DATE);
8
CONVERT("2004-01-22 21:45:33",DATE)
19
select CONVERT(DATE "2004-01-22 21:45:33",CHAR);
20
CONVERT(DATE "2004-01-22 21:45:33",CHAR)
22
select CONVERT(DATE "2004-01-22 21:45:33",CHAR(4));
23
CONVERT(DATE "2004-01-22 21:45:33",CHAR(4))
26
Warning 1292 Truncated incorrect CHAR(4) value: '2004-01-22 21:45:33'
27
select CONVERT(DATE "2004-01-22 21:45:33",BINARY(4));
28
CONVERT(DATE "2004-01-22 21:45:33",BINARY(4))
31
Warning 1292 Truncated incorrect BINARY(4) value: '2004-01-22 21:45:33'
32
select CAST(DATE "2004-01-22 21:45:33" AS BINARY(4));
33
CAST(DATE "2004-01-22 21:45:33" AS BINARY(4))
36
Warning 1292 Truncated incorrect BINARY(4) value: '2004-01-22 21:45:33'
41
Warning 1292 Truncated incorrect DOUBLE value: 'a'
42
select 10.0+cast('a' as decimal);
43
10.0+cast('a' as decimal)
46
Warning 1292 Truncated incorrect DECIMAL value: 'a'
51
Warning 1292 Truncated incorrect DOUBLE value: 'a'
53
cast('ab' AS char) as c1,
54
cast('a ' AS char) as c2,
55
cast('abc' AS char(2)) as c3,
56
cast('a ' AS char(2)) as c4,
57
hex(cast('a' AS char(2))) as c5;
61
Warning 1292 Truncated incorrect CHAR(2) value: 'abc'
62
Warning 1292 Truncated incorrect CHAR(2) value: 'a '
63
select cast(1000 as CHAR(3));
67
Warning 1292 Truncated incorrect CHAR(3) value: '1000'
68
create table t1 select
69
cast('ab' AS char) as c1,
70
cast('a ' AS char) as c2,
71
cast('abc' AS char(2)) as c3,
72
cast('a ' AS char(2)) as c4,
73
cast('a' AS char(2)) as c5;
74
ERROR 22007: Truncated incorrect CHAR(2) value: 'abc'
76
cast('��' AS char) as c1,
77
cast('� ' AS char) as c2,
78
cast('���' AS char(2)) as c3,
79
cast('� ' AS char(2)) as c4,
80
cast('�' AS char(2)) as c5;
84
Warning 1292 Truncated incorrect CHAR(2) value: '���'
85
Warning 1292 Truncated incorrect CHAR(2) value: '� '
86
select cast("2001-1-1" as date) = "2001-01-01";
87
cast("2001-1-1" as date) = "2001-01-01"
89
select cast("2001-1-1" as datetime) = "2001-01-01 00:00:00";
90
cast("2001-1-1" as datetime) = "2001-01-01 00:00:00"
92
select cast(NULL as DATE);
95
select cast(NULL as BINARY);
98
CREATE TABLE t1 (a enum ('aac','aab','aaa') not null);
99
INSERT INTO t1 VALUES ('aaa'),('aab'),('aac');
100
SELECT a, CAST(a AS CHAR(3)) FROM t1 ORDER BY CAST(a AS CHAR(2)), a;
106
Warning 1292 Truncated incorrect CHAR(2) value: 'aaa'
107
Warning 1292 Truncated incorrect CHAR(2) value: 'aab'
108
Warning 1292 Truncated incorrect CHAR(2) value: 'aac'
109
SELECT a, CAST(a AS CHAR(2)) FROM t1 ORDER BY CAST(a AS CHAR(3)), a;
115
Warning 1292 Truncated incorrect CHAR(2) value: 'aaa'
116
Warning 1292 Truncated incorrect CHAR(2) value: 'aab'
117
Warning 1292 Truncated incorrect CHAR(2) value: 'aac'
119
select date_add(cast('2004-12-30 12:00:00' as date), interval 0 hour);
120
date_add(cast('2004-12-30 12:00:00' as date), interval 0 hour)
122
select isnull(date(NULL)), isnull(cast(NULL as DATE));
123
isnull(date(NULL)) isnull(cast(NULL as DATE))
125
select cast('1.2' as decimal(3,2));
126
cast('1.2' as decimal(3,2))
128
select 1e18 * cast('1.2' as decimal(3,2));
129
1e18 * cast('1.2' as decimal(3,2))
132
select cast(@v1 as decimal(22, 2));
133
cast(@v1 as decimal(22, 2))
134
1000000000000000000.00
135
select cast(-1e18 as decimal(22,2));
136
cast(-1e18 as decimal(22,2))
137
-1000000000000000000.00
138
CREATE TABLE t1 (v varchar(10), tt tinytext, t text,
139
mt mediumtext, lt longtext);
140
INSERT INTO t1 VALUES ('1.01', '2.02', '3.03', '4.04', '5.05');
141
SELECT CAST(v AS DECIMAL), CAST(tt AS DECIMAL), CAST(t AS DECIMAL),
142
CAST(mt AS DECIMAL), CAST(lt AS DECIMAL) from t1;
143
CAST(v AS DECIMAL) CAST(tt AS DECIMAL) CAST(t AS DECIMAL) CAST(mt AS DECIMAL) CAST(lt AS DECIMAL)
146
select cast(NULL as decimal(6)) as t1;
149
select hex(cast('a' as binary(2)));
150
hex(cast('a' as binary(2)))
152
CREATE TABLE t1 (f1 DATE);
153
INSERT INTO t1 VALUES ('2007-07-19'), (NULL);
157
HOUR(f1) MINUTE(f1) SECOND(f1)
160
SELECT HOUR(CAST('2007-07-19' AS DATE)),
161
MINUTE(CAST('2007-07-19' AS DATE)),
162
SECOND(CAST('2007-07-19' AS DATE));
163
HOUR(CAST('2007-07-19' AS DATE)) MINUTE(CAST('2007-07-19' AS DATE)) SECOND(CAST('2007-07-19' AS DATE))
165
SELECT HOUR(CAST(NULL AS DATE)),
166
MINUTE(CAST(NULL AS DATE)),
167
SECOND(CAST(NULL AS DATE));
168
HOUR(CAST(NULL AS DATE)) MINUTE(CAST(NULL AS DATE)) SECOND(CAST(NULL AS DATE))
173
HOUR(NULL) MINUTE(NULL) SECOND(NULL)