Loading BitKeeper/etc/logging_ok +1 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ bar@gw.udmsearch.izhnet.ru bar@mysql.com bar@noter.intranet.mysql.r18.ru bell@51.0.168.192.in-addr.arpa bell@book.sanja.is.com.ua bell@laptop.sanja.is.com.ua bell@sanja.is.com.ua bk@admin.bk Loading mysql-test/r/subselect.result +24 −0 Original line number Diff line number Diff line Loading @@ -2697,3 +2697,27 @@ select (1,2,3) = (select * from t1); ERROR 21000: Operand should contain 3 column(s) select (select * from t1) = (1,2,3); ERROR 21000: Operand should contain 2 column(s) drop table t1 #; CREATE TABLE `t1` ( `itemid` bigint(20) unsigned NOT NULL auto_increment, `sessionid` bigint(20) unsigned default NULL, `time` int(10) unsigned NOT NULL default '0', `type` set('A','D','E','F','G','I','L','N','U') collate latin1_general_ci NOT NULL default '', `data` text collate latin1_general_ci NOT NULL, PRIMARY KEY (`itemid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t1` VALUES (1, 1, 1, 'D', ''); CREATE TABLE `t2` ( `sessionid` bigint(20) unsigned NOT NULL auto_increment, `pid` int(10) unsigned NOT NULL default '0', `date` int(10) unsigned NOT NULL default '0', `ip` varchar(15) collate latin1_general_ci NOT NULL default '', PRIMARY KEY (`sessionid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t2` VALUES (1, 1, 1, '10.10.10.1'); SELECT s.ip, count( e.itemid ) FROM `t1` e JOIN t2 s ON s.sessionid = e.sessionid WHERE e.sessionid = ( SELECT sessionid FROM t2 ORDER BY sessionid DESC LIMIT 1 ) GROUP BY s.ip HAVING count( e.itemid ) >0 LIMIT 0 , 30; ip count( e.itemid ) 10.10.10.1 1 drop tables t1,t2; mysql-test/t/subselect.test +24 −0 Original line number Diff line number Diff line Loading @@ -1722,3 +1722,27 @@ select (1,2,3) = (select * from t1); -- error 1241 select (select * from t1) = (1,2,3); drop table t1 # # Item_int_with_ref check (BUG#10020) # CREATE TABLE `t1` ( `itemid` bigint(20) unsigned NOT NULL auto_increment, `sessionid` bigint(20) unsigned default NULL, `time` int(10) unsigned NOT NULL default '0', `type` set('A','D','E','F','G','I','L','N','U') collate latin1_general_ci NOT NULL default '', `data` text collate latin1_general_ci NOT NULL, PRIMARY KEY (`itemid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t1` VALUES (1, 1, 1, 'D', ''); CREATE TABLE `t2` ( `sessionid` bigint(20) unsigned NOT NULL auto_increment, `pid` int(10) unsigned NOT NULL default '0', `date` int(10) unsigned NOT NULL default '0', `ip` varchar(15) collate latin1_general_ci NOT NULL default '', PRIMARY KEY (`sessionid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t2` VALUES (1, 1, 1, '10.10.10.1'); SELECT s.ip, count( e.itemid ) FROM `t1` e JOIN t2 s ON s.sessionid = e.sessionid WHERE e.sessionid = ( SELECT sessionid FROM t2 ORDER BY sessionid DESC LIMIT 1 ) GROUP BY s.ip HAVING count( e.itemid ) >0 LIMIT 0 , 30; drop tables t1,t2; sql/item.cc +1 −1 Original line number Diff line number Diff line Loading @@ -2034,7 +2034,7 @@ bool Item_int::eq(const Item *arg, bool binary_cmp) const Item *Item_int_with_ref::new_item() { DBUG_ASSERT(ref->basic_const_item()); DBUG_ASSERT(ref->const_item()); /* We need to evaluate the constant to make sure it works with parameter markers. Loading Loading
BitKeeper/etc/logging_ok +1 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ bar@gw.udmsearch.izhnet.ru bar@mysql.com bar@noter.intranet.mysql.r18.ru bell@51.0.168.192.in-addr.arpa bell@book.sanja.is.com.ua bell@laptop.sanja.is.com.ua bell@sanja.is.com.ua bk@admin.bk Loading
mysql-test/r/subselect.result +24 −0 Original line number Diff line number Diff line Loading @@ -2697,3 +2697,27 @@ select (1,2,3) = (select * from t1); ERROR 21000: Operand should contain 3 column(s) select (select * from t1) = (1,2,3); ERROR 21000: Operand should contain 2 column(s) drop table t1 #; CREATE TABLE `t1` ( `itemid` bigint(20) unsigned NOT NULL auto_increment, `sessionid` bigint(20) unsigned default NULL, `time` int(10) unsigned NOT NULL default '0', `type` set('A','D','E','F','G','I','L','N','U') collate latin1_general_ci NOT NULL default '', `data` text collate latin1_general_ci NOT NULL, PRIMARY KEY (`itemid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t1` VALUES (1, 1, 1, 'D', ''); CREATE TABLE `t2` ( `sessionid` bigint(20) unsigned NOT NULL auto_increment, `pid` int(10) unsigned NOT NULL default '0', `date` int(10) unsigned NOT NULL default '0', `ip` varchar(15) collate latin1_general_ci NOT NULL default '', PRIMARY KEY (`sessionid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t2` VALUES (1, 1, 1, '10.10.10.1'); SELECT s.ip, count( e.itemid ) FROM `t1` e JOIN t2 s ON s.sessionid = e.sessionid WHERE e.sessionid = ( SELECT sessionid FROM t2 ORDER BY sessionid DESC LIMIT 1 ) GROUP BY s.ip HAVING count( e.itemid ) >0 LIMIT 0 , 30; ip count( e.itemid ) 10.10.10.1 1 drop tables t1,t2;
mysql-test/t/subselect.test +24 −0 Original line number Diff line number Diff line Loading @@ -1722,3 +1722,27 @@ select (1,2,3) = (select * from t1); -- error 1241 select (select * from t1) = (1,2,3); drop table t1 # # Item_int_with_ref check (BUG#10020) # CREATE TABLE `t1` ( `itemid` bigint(20) unsigned NOT NULL auto_increment, `sessionid` bigint(20) unsigned default NULL, `time` int(10) unsigned NOT NULL default '0', `type` set('A','D','E','F','G','I','L','N','U') collate latin1_general_ci NOT NULL default '', `data` text collate latin1_general_ci NOT NULL, PRIMARY KEY (`itemid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t1` VALUES (1, 1, 1, 'D', ''); CREATE TABLE `t2` ( `sessionid` bigint(20) unsigned NOT NULL auto_increment, `pid` int(10) unsigned NOT NULL default '0', `date` int(10) unsigned NOT NULL default '0', `ip` varchar(15) collate latin1_general_ci NOT NULL default '', PRIMARY KEY (`sessionid`) ) DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; INSERT INTO `t2` VALUES (1, 1, 1, '10.10.10.1'); SELECT s.ip, count( e.itemid ) FROM `t1` e JOIN t2 s ON s.sessionid = e.sessionid WHERE e.sessionid = ( SELECT sessionid FROM t2 ORDER BY sessionid DESC LIMIT 1 ) GROUP BY s.ip HAVING count( e.itemid ) >0 LIMIT 0 , 30; drop tables t1,t2;
sql/item.cc +1 −1 Original line number Diff line number Diff line Loading @@ -2034,7 +2034,7 @@ bool Item_int::eq(const Item *arg, bool binary_cmp) const Item *Item_int_with_ref::new_item() { DBUG_ASSERT(ref->basic_const_item()); DBUG_ASSERT(ref->const_item()); /* We need to evaluate the constant to make sure it works with parameter markers. Loading