нужен рекурсивный запрос и хранимая процедура в терадате - PullRequest
0 голосов
/ 09 июня 2018

У меня нижеприведенный Excel хранится в таблице, где мне нужно искать какой-то шаблон, используя хранимую процедуру данных tera и рекурсивную функцию в данных tera.Я написал запрос, но он идет в бесконечном цикле.Пожалуйста, помогите мне с этим

Fruit_name      Type              Schedule

Orange          Equal to           Banana
pineapple       Equal to         Straberry
Banana          Equal to           Lichi
Lichi           direct          pineapple

Так что в основном сценарий, который я напишу, будет начинаться с fruitname = Orange, он проверяет, имеет ли тип столбца прямое значение или нет, если нет третьего столбца, т.е.значение в этом будет проверено снова в имени фрукта, т.е. банан будет проверять столбец fruit_name снова во второй раз, и цикл будет продолжаться до тех пор, пока столбец 2 не получит значение «direct».так что в приведенном выше примере цикл будет запущен 3 раза, и, когда плод будет личи, цикл останавливается.так как тип для личи прямой и цикл заканчивается

Ниже приведена процедура, которую я написал

Пожалуйста, помогите мне с этим.

    CREATE PROCEDURE fruit_name(OUT VAR5 Varchar(20)) 
    BEGIN 
    DECLARE VAR_TYPE VARCHAR (20);
    DECLARE VAR_TYPE1 VARCHAR (20);
    DECLARE VAR_SCHEDULE VARCHAR (20);

   select type  into VAR_TYPE from test_table where fruit_name='Orange';
   select SCHEDULE  into VAR_SCHEDULE from test_table where fruit_name='Orange';
   while(Type<>'Direct') do
   BEGIN


    select  type  into VAR_TYPE from test_table where fruie_name=VAR_SCHEDULE;
    select  schedule  into VAR_TYPE1 from TSSC10W.test_table where 
    fruit_name=VAR_SCHEDULE;
    set VAR_SCHEDULE=VAR_TYPE1;


    END;

    END while; 


    set VAR5=VAR_SCHEDULE;


END;

Тот же цикл, который мне нужно написатьиспользуя рекурсивную функцию.

Помощь оценена

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...