mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
merging
This commit is contained in:
@ -1534,6 +1534,21 @@ select (1.20396873 * 0.89550000 * 0.68000000 * 1.08721696 * 0.99500000 *
|
|||||||
(1.20396873 * 0.89550000 * 0.68000000 * 1.08721696 * 0.99500000 *
|
(1.20396873 * 0.89550000 * 0.68000000 * 1.08721696 * 0.99500000 *
|
||||||
1.01500000 * 1.01500000 * 0.99500000)
|
1.01500000 * 1.01500000 * 0.99500000)
|
||||||
0.812988073953673124592306939480
|
0.812988073953673124592306939480
|
||||||
|
create table t1 as select 5.05 / 0.014;
|
||||||
|
Warnings:
|
||||||
|
Note 1265 Data truncated for column '5.05 / 0.014' at row 1
|
||||||
|
show warnings;
|
||||||
|
Level Code Message
|
||||||
|
Note 1265 Data truncated for column '5.05 / 0.014' at row 1
|
||||||
|
show create table t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`5.05 / 0.014` decimal(10,6) default NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
|
select * from t1;
|
||||||
|
5.05 / 0.014
|
||||||
|
360.714286
|
||||||
|
DROP TABLE t1;
|
||||||
End of 5.0 tests
|
End of 5.0 tests
|
||||||
select cast(143.481 as decimal(4,1));
|
select cast(143.481 as decimal(4,1));
|
||||||
cast(143.481 as decimal(4,1))
|
cast(143.481 as decimal(4,1))
|
||||||
|
@ -1235,6 +1235,16 @@ DROP TABLE t1;
|
|||||||
select (1.20396873 * 0.89550000 * 0.68000000 * 1.08721696 * 0.99500000 *
|
select (1.20396873 * 0.89550000 * 0.68000000 * 1.08721696 * 0.99500000 *
|
||||||
1.01500000 * 1.01500000 * 0.99500000);
|
1.01500000 * 1.01500000 * 0.99500000);
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug #31616 div_precision_increment description looks wrong
|
||||||
|
#
|
||||||
|
|
||||||
|
create table t1 as select 5.05 / 0.014;
|
||||||
|
show warnings;
|
||||||
|
show create table t1;
|
||||||
|
select * from t1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
--echo End of 5.0 tests
|
--echo End of 5.0 tests
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -1301,8 +1301,10 @@ my_decimal *Item_func_div::decimal_op(my_decimal *decimal_value)
|
|||||||
|
|
||||||
void Item_func_div::result_precision()
|
void Item_func_div::result_precision()
|
||||||
{
|
{
|
||||||
uint arg_prec= args[0]->decimal_precision() + prec_increment;
|
uint precision=min(args[0]->decimal_precision() +
|
||||||
uint precision=min(arg_prec, DECIMAL_MAX_PRECISION);
|
args[1]->decimals + prec_increment,
|
||||||
|
DECIMAL_MAX_PRECISION);
|
||||||
|
|
||||||
/* Integer operations keep unsigned_flag if one of arguments is unsigned */
|
/* Integer operations keep unsigned_flag if one of arguments is unsigned */
|
||||||
if (result_type() == INT_RESULT)
|
if (result_type() == INT_RESULT)
|
||||||
unsigned_flag= args[0]->unsigned_flag | args[1]->unsigned_flag;
|
unsigned_flag= args[0]->unsigned_flag | args[1]->unsigned_flag;
|
||||||
|
Reference in New Issue
Block a user