sql >> Databasteknik >  >> RDS >> Oracle

PL SQL hur man väljer alla kolumner

Jag är inte säker på om jag förstår din fråga och ditt krav.

Men om du letar efter ett sätt att få en tabells innehåll, eller en del därav, är det förmodligen så här du skulle ställa dig till det:

create table tq84_test_table (
  col_1 number,
  col_2 varchar2(10),
  col_3 date
);

insert into tq84_test_table values (1, 'one'  , sysdate);
insert into tq84_test_table values (2, 'two'  , sysdate+1);
insert into tq84_test_table values (3, 'three', sysdate-1);


create or replace package tq84_sss as

  type record_t is table of tq84_test_table%rowtype;

  function GetADedIcWarningsProv return record_t;

end;
/

create or replace package body tq84_sss as

  function GetADedIcWarningsProv return record_t 
  is 
      ret record_t; 
  begin

      select * bulk collect into ret
      from tq84_test_table;

      return ret;

  end GetADedIcWarningsProv;

end;
/

Du skulle sedan senare använda den här funktionen så här:

declare

  table_content tq84_sss.record_t;

begin

  table_content := tq84_sss.GetADedIcWarningsProv;

  for i in 1 .. table_content.count loop

      dbms_output.put_line(table_content(i).col_1 || ' ' ||
                           table_content(i).col_2 || ' ' ||
                           table_content(i).col_3 
                          );

  end loop;

end;
/


  1. Skriv ut innehållet i en datatabell

  2. MySQL - Konvertera ett dubblettvärde till ett unikt med en inkrementsammansättning

  3. Effektivare sätt att hitta anställda med täckning mellan två datum

  4. KOPIERA bara några kolumner från en indata-CSV?