mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
f935c6a286
Changed timestamp to return string in YYYY-MM-DD HH:MM:SS format. DATE_ADD() and related functions now returns correct DATE/DATETIME type depending on argument types. Now all tests passes, still some work left to remove warnings in log files from mysql-test-run mysql-test/r/cast.result: New result for time mysql-test/r/delayed.result: Timestamp update mysql-test/r/derived.result: Fix after bulk insert change mysql-test/r/explain.result: Fix after bulk insert change mysql-test/r/func_date_add.result: Timestamp change mysql-test/r/func_str.result: Timestamp change mysql-test/r/func_time.result: Timestamp change mysql-test/r/innodb.result: Timestamp change mysql-test/r/join_outer.result: Fix after bulk insert change mysql-test/r/key_primary.result: Fix after bulk insert change mysql-test/r/keywords.result: Timestamp change mysql-test/r/merge.result: Removed warning mysql-test/r/odbc.result: Fix after bulk insert change mysql-test/r/range.result: Fix after bulk insert change mysql-test/r/select.result: Fix after bulk insert change mysql-test/r/subselect.result: Fixed EXPLAIN output mysql-test/r/type_datetime.result: Timestamp update mysql-test/r/type_ranges.result: Timestamp update mysql-test/r/type_timestamp.result: Timestamp update mysql-test/r/union.result: EXPLAIN UPDATE mysql-test/t/func_str.test: Timestamp update mysql-test/t/func_time.test: New test for interval type result mysql-test/t/merge.test: Remove warnings of wrong drop table mysql-test/t/type_datetime.test: Timestamp change mysql-test/t/type_timestamp.test: Timestamp change sql/field.cc: Changed timestamp to return string in YYYY-MM-DD HH:MM:SS format sql/field.h: Changed timestamp to return string in YYYY-MM-DD HH:MM:SS format sql/item.cc: Binary protocol update sql/item.h: Binary protocol update sql/item_func.cc: Added comment sql/item_func.h: @variables are always returned to the client as strings sql/item_timefunc.cc: Changed INTERVAL to return correct type sql/item_timefunc.h: Changed INTERVAL to return correct type sql/mysqld.cc: Changed default pthread_attr_setstacksize to 129K sql/protocol.cc: More type checking sql/set_var.cc: Fixed that @convert works ok with new protocol sql/sql_analyse.cc: Fixed bug in analyze sql/sql_class.cc: Fixed bug from last push in LIMIT sql/sql_error.cc: More optimal types sql/sql_repl.cc: Binary protocol changes sql/sql_select.cc: Fixed bug in multi-table-update Changed EXPLAIN to return NULL instead of empty strings sql/sql_show.cc: Binary protocol
30 lines
1.2 KiB
Text
30 lines
1.2 KiB
Text
drop table if exists t1;
|
|
create table t1 (id int not null, str char(10), unique(str));
|
|
insert into t1 values (1, null),(2, null),(3, "foo"),(4, "bar");
|
|
select * from t1 where str is null;
|
|
id str
|
|
1 NULL
|
|
2 NULL
|
|
select * from t1 where str="foo";
|
|
id str
|
|
3 foo
|
|
explain select * from t1 where str is null;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 ref str str 11 const 1 Using where
|
|
explain select * from t1 where str="foo";
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 const str str 11 const 1
|
|
explain select * from t1 ignore key (str) where str="foo";
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using where
|
|
explain select * from t1 use key (str,str) where str="foo";
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE t1 const str str 11 const 1
|
|
explain select * from t1 use key (str,str,foo) where str="foo";
|
|
Key column 'foo' doesn't exist in table
|
|
explain select * from t1 ignore key (str,str,foo) where str="foo";
|
|
Key column 'foo' doesn't exist in table
|
|
drop table t1;
|
|
explain select 1;
|
|
id select_type table type possible_keys key key_len ref rows Extra
|
|
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|