mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into radha.local:/Users/patg/mysql-5.0
This commit is contained in:
commit
019288c623
4 changed files with 163 additions and 4 deletions
|
@ -205,6 +205,7 @@ patg@krsna.
|
||||||
patg@krsna.patg.net
|
patg@krsna.patg.net
|
||||||
patg@patrick-galbraiths-computer.local
|
patg@patrick-galbraiths-computer.local
|
||||||
patg@pc248.lfp.kcls.org
|
patg@pc248.lfp.kcls.org
|
||||||
|
patg@radha.local
|
||||||
paul@central.snake.net
|
paul@central.snake.net
|
||||||
paul@frost.snake.net
|
paul@frost.snake.net
|
||||||
paul@ice.local
|
paul@ice.local
|
||||||
|
|
|
@ -906,9 +906,100 @@ INSERT INTO federated.t1 (name, country_id, other) VALUES ('Lenz', 2, 22222);
|
||||||
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Marizio', 3, 33333);
|
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Marizio', 3, 33333);
|
||||||
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Monty', 4, 33333);
|
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Monty', 4, 33333);
|
||||||
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Sanja', 5, 33333);
|
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Sanja', 5, 33333);
|
||||||
|
EXPLAIN SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1, federated.countries WHERE
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE countries ALL PRIMARY NULL NULL NULL 5
|
||||||
|
1 SIMPLE t1 ref country_id country_id 4 federated.countries.id 120
|
||||||
|
SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1, federated.countries WHERE
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
name country_id other country
|
||||||
|
Kumar 1 11111 India
|
||||||
|
Lenz 2 22222 Germany
|
||||||
|
Marizio 3 33333 Italy
|
||||||
|
Monty 4 33333 Finland
|
||||||
|
Sanja 5 33333 Ukraine
|
||||||
|
EXPLAIN SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE countries ALL PRIMARY NULL NULL NULL 5
|
||||||
|
1 SIMPLE t1 ref country_id country_id 4 federated.countries.id 120
|
||||||
|
SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
name country_id other country
|
||||||
|
Kumar 1 11111 India
|
||||||
|
Lenz 2 22222 Germany
|
||||||
|
Marizio 3 33333 Italy
|
||||||
|
Monty 4 33333 Finland
|
||||||
|
Sanja 5 33333 Ukraine
|
||||||
|
EXPLAIN SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id
|
||||||
|
WHERE federated.t1.name = 'Monty';
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE countries ALL PRIMARY NULL NULL NULL 5
|
||||||
|
1 SIMPLE t1 ref country_id country_id 4 federated.countries.id 120 Using where
|
||||||
|
SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id
|
||||||
|
WHERE federated.t1.name = 'Monty';
|
||||||
|
name country_id other country
|
||||||
|
Monty 4 33333 Finland
|
||||||
|
EXPLAIN SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.id;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 10000 Using temporary; Using filesort
|
||||||
|
1 SIMPLE countries eq_ref PRIMARY PRIMARY 4 federated.t1.country_id 1
|
||||||
SELECT federated.t1.*, federated.countries.country
|
SELECT federated.t1.*, federated.countries.country
|
||||||
FROM federated.t1 left join federated.countries
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
ON federated.t1.country_id = federated.countries.id;
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.id;
|
||||||
|
id country_id name other country
|
||||||
|
1 1 Kumar 11111 India
|
||||||
|
2 2 Lenz 22222 Germany
|
||||||
|
3 3 Marizio 33333 Italy
|
||||||
|
4 4 Monty 33333 Finland
|
||||||
|
5 5 Sanja 33333 Ukraine
|
||||||
|
EXPLAIN SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.country;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 10000 Using temporary; Using filesort
|
||||||
|
1 SIMPLE countries eq_ref PRIMARY PRIMARY 4 federated.t1.country_id 1
|
||||||
|
SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.country;
|
||||||
|
id country_id name other country
|
||||||
|
4 4 Monty 33333 Finland
|
||||||
|
2 2 Lenz 22222 Germany
|
||||||
|
1 1 Kumar 11111 India
|
||||||
|
3 3 Marizio 33333 Italy
|
||||||
|
5 5 Sanja 33333 Ukraine
|
||||||
|
EXPLAIN SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 RIGHT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.t1.country_id;
|
||||||
|
id select_type table type possible_keys key key_len ref rows Extra
|
||||||
|
1 SIMPLE countries ALL NULL NULL NULL NULL 5 Using temporary; Using filesort
|
||||||
|
1 SIMPLE t1 ref country_id country_id 4 federated.countries.id 120
|
||||||
|
SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 RIGHT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.t1.country_id;
|
||||||
id country_id name other country
|
id country_id name other country
|
||||||
1 1 Kumar 11111 India
|
1 1 Kumar 11111 India
|
||||||
2 2 Lenz 22222 Germany
|
2 2 Lenz 22222 Germany
|
||||||
|
|
|
@ -861,9 +861,70 @@ INSERT INTO federated.t1 (name, country_id, other) VALUES ('Marizio', 3, 33333);
|
||||||
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Monty', 4, 33333);
|
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Monty', 4, 33333);
|
||||||
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Sanja', 5, 33333);
|
INSERT INTO federated.t1 (name, country_id, other) VALUES ('Sanja', 5, 33333);
|
||||||
|
|
||||||
|
#inner join
|
||||||
|
EXPLAIN SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1, federated.countries WHERE
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
|
||||||
|
SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1, federated.countries WHERE
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
|
||||||
|
EXPLAIN SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
|
||||||
|
SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id;
|
||||||
|
|
||||||
|
EXPLAIN SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id
|
||||||
|
WHERE federated.t1.name = 'Monty';
|
||||||
|
|
||||||
|
SELECT federated.t1.name AS name, federated.t1.country_id AS country_id,
|
||||||
|
federated.t1.other AS other, federated.countries.country AS country
|
||||||
|
FROM federated.t1 INNER JOIN federated.countries ON
|
||||||
|
federated.t1.country_id = federated.countries.id
|
||||||
|
WHERE federated.t1.name = 'Monty';
|
||||||
|
|
||||||
|
#left join
|
||||||
|
EXPLAIN SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.id;
|
||||||
|
|
||||||
SELECT federated.t1.*, federated.countries.country
|
SELECT federated.t1.*, federated.countries.country
|
||||||
FROM federated.t1 left join federated.countries
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
ON federated.t1.country_id = federated.countries.id;
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.id;
|
||||||
|
|
||||||
|
EXPLAIN SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.country;
|
||||||
|
|
||||||
|
SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 LEFT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.countries.country;
|
||||||
|
|
||||||
|
#right join
|
||||||
|
EXPLAIN SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 RIGHT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.t1.country_id;
|
||||||
|
|
||||||
|
SELECT federated.t1.*, federated.countries.country
|
||||||
|
FROM federated.t1 RIGHT JOIN federated.countries
|
||||||
|
ON federated.t1.country_id = federated.countries.id
|
||||||
|
ORDER BY federated.t1.country_id;
|
||||||
|
|
||||||
DROP TABLE federated.countries;
|
DROP TABLE federated.countries;
|
||||||
|
|
||||||
|
|
|
@ -1526,6 +1526,12 @@ int ha_federated::index_read_idx(byte *buf, uint index, const byte *key,
|
||||||
table->status= STATUS_NOT_FOUND;
|
table->status= STATUS_NOT_FOUND;
|
||||||
DBUG_RETURN(mysql_errno(mysql));
|
DBUG_RETURN(mysql_errno(mysql));
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
This basically says that the record in table->record[0] is legal, and that it is
|
||||||
|
ok to use this record, for whatever reason, such as with a join (without it, joins
|
||||||
|
will not work)
|
||||||
|
*/
|
||||||
|
table->status=0;
|
||||||
|
|
||||||
DBUG_RETURN(rnd_next(buf));
|
DBUG_RETURN(rnd_next(buf));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue