mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 10:14:19 +01:00
Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.0
into deer.(none):/home/hf/work/mysql-4.0.666
This commit is contained in:
commit
cfa509ac2c
3 changed files with 46 additions and 12 deletions
|
@ -234,3 +234,16 @@ INSERT INTO t1 VALUES (1, 'a545f661efdd1fb66fdee3aab79945bf');
|
|||
SELECT 1 FROM t1 WHERE tmp=AES_DECRYPT(tmp,"password");
|
||||
1
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (
|
||||
wid int(10) unsigned NOT NULL auto_increment,
|
||||
data_podp date default NULL,
|
||||
status_wnio enum('nowy','podp','real','arch') NOT NULL default 'nowy',
|
||||
PRIMARY KEY(wid),
|
||||
);
|
||||
INSERT INTO t1 VALUES (8,NULL,'real');
|
||||
INSERT INTO t1 VALUES (9,NULL,'nowy');
|
||||
SELECT elt(status_wnio,data_podp) FROM t1 GROUP BY wid;
|
||||
elt(status_wnio,data_podp)
|
||||
NULL
|
||||
NULL
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -125,3 +125,15 @@ CREATE TABLE t1 (id int(11) NOT NULL auto_increment, tmp text NOT NULL, KEY id (
|
|||
INSERT INTO t1 VALUES (1, 'a545f661efdd1fb66fdee3aab79945bf');
|
||||
SELECT 1 FROM t1 WHERE tmp=AES_DECRYPT(tmp,"password");
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1 (
|
||||
wid int(10) unsigned NOT NULL auto_increment,
|
||||
data_podp date default NULL,
|
||||
status_wnio enum('nowy','podp','real','arch') NOT NULL default 'nowy',
|
||||
PRIMARY KEY(wid),
|
||||
);
|
||||
|
||||
INSERT INTO t1 VALUES (8,NULL,'real');
|
||||
INSERT INTO t1 VALUES (9,NULL,'nowy');
|
||||
SELECT elt(status_wnio,data_podp) FROM t1 GROUP BY wid;
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -1539,37 +1539,46 @@ void Item_func_elt::update_used_tables()
|
|||
double Item_func_elt::val()
|
||||
{
|
||||
uint tmp;
|
||||
null_value=1;
|
||||
if ((tmp=(uint) item->val_int()) == 0 || tmp > arg_count)
|
||||
{
|
||||
null_value=1;
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
double result= args[tmp-1]->val();
|
||||
if (args[tmp-1]->is_null())
|
||||
return 0.0;
|
||||
|
||||
null_value=0;
|
||||
return args[tmp-1]->val();
|
||||
return result;
|
||||
}
|
||||
|
||||
longlong Item_func_elt::val_int()
|
||||
{
|
||||
uint tmp;
|
||||
null_value=1;
|
||||
if ((tmp=(uint) item->val_int()) == 0 || tmp > arg_count)
|
||||
{
|
||||
null_value=1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int result= args[tmp-1]->val_int();
|
||||
if (args[tmp-1]->is_null())
|
||||
return 0;
|
||||
|
||||
null_value=0;
|
||||
return args[tmp-1]->val_int();
|
||||
return result;
|
||||
}
|
||||
|
||||
String *Item_func_elt::val_str(String *str)
|
||||
{
|
||||
uint tmp;
|
||||
null_value=1;
|
||||
if ((tmp=(uint) item->val_int()) == 0 || tmp > arg_count)
|
||||
{
|
||||
null_value=1;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
String *result= args[tmp-1]->val_str(str);
|
||||
if (args[tmp-1]->is_null())
|
||||
return NULL;
|
||||
|
||||
null_value=0;
|
||||
return args[tmp-1]->val_str(str);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue