diff options
author | mskold@mysql.com <> | 2005-06-02 20:55:32 +0200 |
---|---|---|
committer | mskold@mysql.com <> | 2005-06-02 20:55:32 +0200 |
commit | 6720cb7d6929abd3e2fe159bdcca24e8c3aad9c1 (patch) | |
tree | 794b78a17143a6a09ac3caa64bd9107d3fd1b522 /mysql-test | |
parent | 9cebe281bb80cf8879f466016aba81e875bb2642 (diff) | |
parent | 0e139b89083f03b811581ba84622bd5c3ad4a730 (diff) | |
download | mariadb-git-6720cb7d6929abd3e2fe159bdcca24e8c3aad9c1.tar.gz |
Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/mysql-5.0
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/r/case.result | 17 | ||||
-rw-r--r-- | mysql-test/t/case.test | 19 |
2 files changed, 36 insertions, 0 deletions
diff --git a/mysql-test/r/case.result b/mysql-test/r/case.result index 5fb21004469..a854cf4c7b0 100644 --- a/mysql-test/r/case.result +++ b/mysql-test/r/case.result @@ -160,3 +160,20 @@ t1 CREATE TABLE `t1` ( `COALESCE('a' COLLATE latin1_bin,'b')` varchar(1) character set latin1 collate latin1_bin NOT NULL default '' ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DROP TABLE t1; +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 COALESCE(t2.EMPNUM,t1.EMPNUM) AS CEMPNUM, +t1.EMPNUM AS EMPMUM1, t2.EMPNUM AS EMPNUM2 +FROM t1 LEFT JOIN t2 ON t1.EMPNUM=t2.EMPNUM; +CEMPNUM EMPMUM1 EMPNUM2 +0.00 0 0.00 +2.00 2 NULL +SELECT IFNULL(t2.EMPNUM,t1.EMPNUM) AS CEMPNUM, +t1.EMPNUM AS EMPMUM1, t2.EMPNUM AS EMPNUM2 +FROM t1 LEFT JOIN t2 ON t1.EMPNUM=t2.EMPNUM; +CEMPNUM EMPMUM1 EMPNUM2 +0.00 0 0.00 +2.00 2 NULL +DROP TABLE t1,t2; diff --git a/mysql-test/t/case.test b/mysql-test/t/case.test index fed3ff07a13..f2cfce9085d 100644 --- a/mysql-test/t/case.test +++ b/mysql-test/t/case.test @@ -110,3 +110,22 @@ explain extended SELECT COALESCE('a' COLLATE latin1_bin,'b'); SHOW CREATE TABLE t1; DROP TABLE t1; + +# +# Tests for bug #9939: conversion of the arguments for COALESCE and IFNULL +# + +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 COALESCE(t2.EMPNUM,t1.EMPNUM) AS CEMPNUM, + t1.EMPNUM AS EMPMUM1, t2.EMPNUM AS EMPNUM2 + FROM t1 LEFT JOIN t2 ON t1.EMPNUM=t2.EMPNUM; + +SELECT IFNULL(t2.EMPNUM,t1.EMPNUM) AS CEMPNUM, + t1.EMPNUM AS EMPMUM1, t2.EMPNUM AS EMPNUM2 + FROM t1 LEFT JOIN t2 ON t1.EMPNUM=t2.EMPNUM; + +DROP TABLE t1,t2; |