1. Список говнокодов пользователя eggman

    Всего: 1

  2. SQL / Говнокод #20082

    −49

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    Declare
    alph Varchar2(26)   := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    ch   Varchar2(1);
    
    Begin
        dbms_output.put_line('Starting search: ' || srch);
        For i In 1..26 Loop
            
        Select Substr(alph,i,1) Into ch From dual;
    
            with 
              v_tab_col as (
            Select '"' || c.Table_Name || '"' As Table_Name,
                   '"' || c.Column_Name || '"' As Column_Name,
                   '"' || c.Owner || '"' As Owner,
                   Row_Number() Over(Partition By c.Owner, c.Table_Name Order By c.Column_Id) As Rn
              From Dba_Tab_Columns c, Dba_Objects o
            Where Data_Type In ('CHAR', 'VARCHAR2')
               And c.Table_Name = o.Object_Name
               And o.Object_Type = 'TABLE'
               And o.Owner = c.Owner
               And o.object_name Like ch || '%' -- checking by letter

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

    eggman, 26 Мая 2016

    Комментарии (37)