SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 04.02.2011 20:45:10

Kos
Участник
Зарегистрирован: 23.01.2011
Сообщений: 5

Индексы и Ко

в этом топике речь пойдет об индексах и сопутствующих заданиях

Задание :
сделать 2 идентичные таблицы и с помощью пары функций забить их
идентичными значениями (не менее 100000 значений). Теперь одну таблицу проиндексировать.

Что получилось:
CREATE PROCEDURE lol(p1 INT) BEGIN label1: LOOP SET p1 = p1 + 1; IF p1 < 100000 THEN ITERATE label1; END IF; INSERT INTO `odin` VALUES ('p1',rand(),rand()); LEAVE label1; END LOOP label1; END//

Вопросы:
после селекта выдает таблицу в 2 столбца  ,причем все значения нули  кроме единицы в t2 второй строки , почему?  должен выводить
сто тысяч строк  а значения в t1 t2  рандомно генериться

Неактивен

 

#2 04.02.2011 23:18:19

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Индексы и Ко

А вы специально всё в одну строку пишете? wink

CREATE PROCEDURE lol(p1 INT)
BEGIN
    label1: LOOP
        SET p1 = p1 + 1;
        IF p1 < 100000
            THEN ITERATE label1;
        END IF;
        INSERT INTO `odin` VALUES ('p1',rand(),rand());
        LEAVE label1;
    END LOOP label1;
END

Вот так сразу видно, почему ничего не работает wink

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson