mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
merging fix
This commit is contained in:
@ -459,6 +459,7 @@ id c counter
|
||||
3 b 2
|
||||
4 a 2
|
||||
drop table t1;
|
||||
End of 5.0 tests
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
insert into t1 values (1,1),(1,2);
|
||||
CREATE TABLE t2 (primary key (a)) select * from t1;
|
||||
|
@ -847,19 +847,4 @@ select '^^: The above should be ~= 20 + cost(select * from t1). Value less than
|
||||
Z
|
||||
^^: The above should be ~= 20 + cost(select * from t1). Value less than 20 is an error
|
||||
drop table t1, t2;
|
||||
CREATE TABLE t1 (ID INTEGER, Name VARCHAR(50));
|
||||
CREATE TABLE t2 (Test_ID INTEGER);
|
||||
CREATE VIEW v1 (Test_ID, Description) AS SELECT ID, Name FROM t1;
|
||||
CREATE TABLE tv1 SELECT Description AS Name FROM v1 JOIN t2
|
||||
USING (Test_ID);
|
||||
DESCRIBE tv1;
|
||||
Field Type Null Key Default Extra
|
||||
Name varchar(50) YES NULL
|
||||
CREATE TABLE tv2 SELECT Description AS Name FROM v1 JOIN t2
|
||||
ON v1.Test_ID = t2.Test_ID;
|
||||
DESCRIBE tv2;
|
||||
Field Type Null Key Default Extra
|
||||
Name varchar(50) YES NULL
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1,t2,tv1,tv2;
|
||||
End of 5.0 tests.
|
||||
|
@ -4035,6 +4035,29 @@ FROM t1;
|
||||
ERROR HY000: Invalid use of group function
|
||||
DROP TABLE t1,t2;
|
||||
End of 5.0 tests.
|
||||
CREATE TABLE t1 (a int, b int);
|
||||
INSERT INTO t1 VALUES (2,22),(1,11),(2,22);
|
||||
SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 0 GROUP BY a;
|
||||
a
|
||||
1
|
||||
2
|
||||
SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 1 GROUP BY a;
|
||||
a
|
||||
SELECT a FROM t1 t0
|
||||
WHERE (SELECT COUNT(t0.b) FROM t1 t WHERE t.b>20) GROUP BY a;
|
||||
a
|
||||
1
|
||||
2
|
||||
SET @@sql_mode='ansi';
|
||||
SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 0 GROUP BY a;
|
||||
ERROR HY000: Invalid use of group function
|
||||
SELECT a FROM t1 WHERE (SELECT COUNT(b) FROM DUAL) > 1 GROUP BY a;
|
||||
ERROR HY000: Invalid use of group function
|
||||
SELECT a FROM t1 t0
|
||||
WHERE (SELECT COUNT(t0.b) FROM t1 t WHERE t.b>20) GROUP BY a;
|
||||
ERROR HY000: Invalid use of group function
|
||||
SET @@sql_mode=default;
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (s1 char(1));
|
||||
INSERT INTO t1 VALUES ('a');
|
||||
SELECT * FROM t1 WHERE _utf8'a' = ANY (SELECT s1 FROM t1);
|
||||
|
@ -619,8 +619,9 @@ get_date_from_str(THD *thd, String *str, timestamp_type warn_type,
|
||||
|
||||
if (error || *error_arg)
|
||||
{
|
||||
make_truncated_value_warning(thd, str->ptr(), str->length(), warn_type,
|
||||
warn_name);
|
||||
make_truncated_value_warning(thd, MYSQL_ERROR::WARN_LEVEL_WARN,
|
||||
str->ptr(), str->length(),
|
||||
warn_type, warn_name);
|
||||
*error_arg= TRUE;
|
||||
}
|
||||
return value;
|
||||
|
@ -2056,7 +2056,30 @@ bool Item_date_add_interval::get_date(MYSQL_TIME *ltime, uint fuzzy_date)
|
||||
if (date_sub_interval)
|
||||
interval.neg = !interval.neg;
|
||||
|
||||
return (null_value= date_add_interval(ltime, int_type, interval));
|
||||
if ((null_value= date_add_interval(ltime, int_type, interval)))
|
||||
return 1;
|
||||
|
||||
/* Adjust cached_field_type according to the detected type. */
|
||||
if (cached_field_type == MYSQL_TYPE_STRING)
|
||||
{
|
||||
switch (ltime->time_type)
|
||||
{
|
||||
case MYSQL_TIMESTAMP_DATE:
|
||||
cached_field_type= MYSQL_TYPE_DATE;
|
||||
break;
|
||||
case MYSQL_TIMESTAMP_DATETIME:
|
||||
cached_field_type= MYSQL_TYPE_DATETIME;
|
||||
break;
|
||||
case MYSQL_TIMESTAMP_TIME:
|
||||
cached_field_type= MYSQL_TYPE_TIME;
|
||||
break;
|
||||
default:
|
||||
/* Shouldn't get here. */
|
||||
DBUG_ASSERT(0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
@ -860,8 +860,9 @@ bool date_add_interval(MYSQL_TIME *ltime, interval_type int_type, INTERVAL inter
|
||||
}
|
||||
break;
|
||||
default:
|
||||
return 1;
|
||||
goto null_date;
|
||||
}
|
||||
|
||||
return 0; // Ok
|
||||
|
||||
invalid_date:
|
||||
@ -869,6 +870,7 @@ invalid_date:
|
||||
ER_DATETIME_FUNCTION_OVERFLOW,
|
||||
ER(ER_DATETIME_FUNCTION_OVERFLOW),
|
||||
"datetime");
|
||||
null_date:
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user