Oracle
 sql >> Baza danych >  >> RDS >> Oracle

przekazanie nazwy tabeli jako parametru plsql

Możesz użyć dynamicznego SQL:

create or replace function get_table_count (table_name IN varchar2)
  return number
is
  table_count number;
begin
  execute immediate 'select count(*) from ' || table_name into table_count;
  dbms_output.put_line(table_count);
  return table_count;
end;

Istnieje również pośredni sposób uzyskania liczby wierszy (przy użyciu widoków systemowych):

create or replace function get_table_count (table_name IN varchar2)
  return number
is
  table_count number;
begin
  select num_rows
    into table_count
    from user_tables
   where table_name = table_name;

  return table_count;
end;

Drugi sposób działa tylko wtedy, gdy zebrałeś statystyki na stole przed wywołaniem tej funkcji.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Co to jest operator konkatenacji ciągów w Oracle?

  2. odpowiednik `pokaż utwórz tabelę` w Oracle sql

  3. Informacje o elemencie formatu RM w Oracle

  4. różnica między NLS_NCHAR_CHARACTERSET i NLS_CHARACTERSET dla Oracle

  5. Funkcja RTIM() w Oracle