Commit acc6651d authored by igor@rurik.mysql.com's avatar igor@rurik.mysql.com

group_by.result:

  Added  a test case for bug #11385.
group_by.test:
  Added  a test case for bug #11385.
field.h:
  Fixed bug #11385.
  The bug was due to not defined method decimals for the class
  Field_datetime.
parent 7ea12bd7
...@@ -732,3 +732,12 @@ SELECT DISTINCT a, b FROM t1 GROUP BY 'const'; ...@@ -732,3 +732,12 @@ SELECT DISTINCT a, b FROM t1 GROUP BY 'const';
a b a b
1 2 1 2
DROP TABLE t1; DROP TABLE t1;
CREATE TABLE t1 (id INT, dt DATETIME);
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
SELECT dt DIV 1 AS f, id FROM t1 GROUP BY f;
f id
20050501123000 1
DROP TABLE t1;
...@@ -543,7 +543,7 @@ SELECT hostname, COUNT(DISTINCT user_id) as no FROM t1 ...@@ -543,7 +543,7 @@ SELECT hostname, COUNT(DISTINCT user_id) as no FROM t1
DROP TABLE t1; DROP TABLE t1;
# #
# Test for bug #8614: GROUP BY 'const with DISTINCT # Test for bug #8614: GROUP BY 'const' with DISTINCT
# #
CREATE TABLE t1 (a int, b int); CREATE TABLE t1 (a int, b int);
...@@ -552,3 +552,16 @@ SELECT a, b FROM t1 GROUP BY 'const'; ...@@ -552,3 +552,16 @@ SELECT a, b FROM t1 GROUP BY 'const';
SELECT DISTINCT a, b FROM t1 GROUP BY 'const'; SELECT DISTINCT a, b FROM t1 GROUP BY 'const';
DROP TABLE t1; DROP TABLE t1;
#
# Test for bug #11385: GROUP BY for datetime converted to decimals
#
CREATE TABLE t1 (id INT, dt DATETIME);
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
INSERT INTO t1 VALUES ( 1, '2005-05-01 12:30:00' );
SELECT dt DIV 1 AS f, id FROM t1 GROUP BY f;
DROP TABLE t1;
...@@ -25,6 +25,7 @@ ...@@ -25,6 +25,7 @@
#endif #endif
#define NOT_FIXED_DEC 31 #define NOT_FIXED_DEC 31
#define DATETIME_DEC 6
class Send_field; class Send_field;
class Protocol; class Protocol;
...@@ -861,6 +862,7 @@ class Field_datetime :public Field_str { ...@@ -861,6 +862,7 @@ class Field_datetime :public Field_str {
enum ha_base_keytype key_type() const { return HA_KEYTYPE_ULONGLONG; } enum ha_base_keytype key_type() const { return HA_KEYTYPE_ULONGLONG; }
#endif #endif
enum Item_result cmp_type () const { return INT_RESULT; } enum Item_result cmp_type () const { return INT_RESULT; }
uint decimals() const { return DATETIME_DEC; }
int store(const char *to,uint length,CHARSET_INFO *charset); int store(const char *to,uint length,CHARSET_INFO *charset);
int store(double nr); int store(double nr);
int store(longlong nr); int store(longlong nr);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment