Skip to main content

PL/SQL COLLECTION

In PL/SQL, you can create collections to store multiple values of the same datatype.

There are three main types of collections in PL/SQL: associative arrays (also known as index-by tables), nested tables, and VARRAYs (variable-size arrays).




 

VARRAY

These are one-dimensional arrays with a fixed upper bound, specified at declaration.

They are useful when you know the maximum number of elements that will be stored in the array.

DECLARE

  TYPE num_array IS VARRAY(5) OF NUMBER;

  numbers num_array := num_array(10, 20, 30, 40, 50);

  total NUMBER := 0;

BEGIN

  -- Loop through the VARRAY

  FOR i IN 1..numbers.COUNT LOOP

    total := total + numbers(i);

  END LOOP;

  DBMS_OUTPUT.PUT_LINE('Total sum: ' || total);

END;

 


NESTED TABLE

These are one-dimensional arrays with no upper bounds.

They are declared using the TYPE statement and instantiated with the CREATE TYPE statement.

They behave similar to database tables and can be used in SQL operations.

DECLARE

  TYPE num_list IS TABLE OF NUMBER;

  numbers num_list := num_list(10, 20, 30, 40, 50);

  total NUMBER := 0;

BEGIN

  -- Loop through the nested table

  FOR i IN 1..numbers.COUNT LOOP

    total := total + numbers(i);

  END LOOP;

  DBMS_OUTPUT.PUT_LINE('Total sum: ' || total);

END;

 


ASSOCIATIVE ARRAY

These are similar to arrays in other programming languages but are indexed by a unique key rather than by consecutive integers.

They are declared using the TYPE statement and accessed using the key value.

DECLARE

  TYPE employee_salary IS TABLE OF NUMBER INDEX BY VARCHAR2(100);

  salaries employee_salary;

BEGIN

  salaries('John') := 50000;

  salaries('Alice') := 60000;

  salaries('Bob') := 55000;

  -- Accessing values

  DBMS_OUTPUT.PUT_LINE('John''s salary: ' || salaries('John'));

END;

 

 

 

Comments

Popular posts from this blog

Performance Optimization

Performance optimization in SQL is crucial for ensuring that your database queries run efficiently, especially as the size and complexity of your data grow. Here are several strategies and techniques to optimize SQL performance: Indexing Create Indexes : Primary Key and Unique Indexes : These are automatically indexed. Ensure that your tables have primary keys and unique constraints where applicable. Foreign Keys : Index foreign key columns to speed up join operations. Composite Indexes : Use these when queries filter on multiple columns. The order of columns in the index should match the order in the query conditions. Avoid Over-Indexing:  Too many indexes can slow down write operations (INSERT, UPDATE, DELETE). Only index columns that are frequently used in WHERE clauses, JOIN conditions, and as sorting keys. Query Optimization Use SELECT Statements Efficiently : SELECT Only Necessary Columns : Avoid using SELECT * ; specify only ...

DAX UPPER Function

The DAX UPPER function in Power BI is used to convert all characters in a text string to uppercase. This function is useful for standardizing text data, ensuring consistency in text values, and performing case-insensitive comparisons. Syntax: UPPER(<text>) <text>: The text string that you want to convert to uppercase. Purpose: The UPPER function helps ensure that text data is consistently formatted in uppercase. This can be essential for tasks like data cleaning, preparing text for comparisons, and ensuring uniformity in text-based fields. E xample: Suppose you have a table named "Customers" with a column "Name" that contains names in mixed case. You want to create a new column that shows all names in uppercase. UppercaseName = UPPER(Customers[Name]) Example Scenario: Assume you have the following "Customers" table: You can use the UPPER function as follows: Using the UPPER function, you can convert all names to uppercase: UppercaseName = ...

TechUplift: Elevating Your Expertise in Every Click

  Unlock the potential of data with SQL Fundamental: Master querying, managing, and manipulating databases effortlessly. Empower your database mastery with PL/SQL: Unleash the full potential of Oracle databases through advanced programming and optimization. Unlock the Potential of Programming for Innovation and Efficiency.  Transform raw data into actionable insights effortlessly. Empower Your Data Strategy with Power Dataware: Unleash the Potential of Data for Strategic Insights and Decision Making.