pyspark SQL Cursor Fech () - PullRequest
       1

pyspark SQL Cursor Fech ()

0 голосов
/ 03 декабря 2018

Мне нужно прочитать и обработать подмножество строк внутри фрейма данных в pyspark с SQL, возможно ли использовать курсоры? Есть ли другой инструмент в pyspark ?.Спасибо, что помогли мне

Код SQL следующий, курсор находится в другом, идея состоит в том, чтобы прочитать все даты истечения срока действия каждой части кредита, но вместо таблиц SQL или фрейма данных в pyspark.


        DECLARE @operation char(11), @quantity char(3), @Credit_fee char(3), @expiration_date

        DECLARE Operation CURSOR FOR   
            SELECT b.[OPERATION] as 'operation', count(a.[Credit_fee]) as 'quantity'
            from <table1> a left join <table2> b on a.[OPERATION] = b.[OPERATION]
            group by b.[OPERATION]
            having (count(a.[Credit_fee]) >= 12) and (min(a.[Credit_fee]) = 1)

        OPEN Operation 
        FETCH NEXT FROM OPERATION   
        INTO @operation, @quantity 
        WHILE @@FETCH_STATUS = 0  
        BEGIN

            DECLARE Credit_fee CURSOR FOR 
            SELECT [OPERATION], [Credit_fee], [expiration_date]
            FROM <table1>
            WHERE [OPERATION] = @operation

            OPEN Credit_fee  
            FETCH NEXT FROM Credit_fee INTO @Credit_fee  
            IF @@FETCH_STATUS <> 0   
                PRINT '         <<None>>'     

            CLOSE Credit_fee  
            DEALLOCATE Credit_fee  

        FETCH NEXT FROM Operation   
        INTO @operation, @quantity 
        END   
        CLOSE Operation;  

Операция DEALLOCATE;

...