Wednesday, May 11, 2016

How to find number of words in the string


By using length function it is possible to find number of words in the sentence.  First, we find the length of the string and length of the same string without spaces. The difference between them plus 1 will be the number of words in the sentence.


SELECT LENGTH('Oracle PL SQL') - LENGTH(REPLACE('Oracle PL SQL', ' ', '')) + 1 WordCount

from DUAL

Tuesday, May 10, 2016

PROCEDURES


This Oracle tutorial explains how to create and drop procedures in Oracle/PLSQL with syntax and examples.

CREATE PROCEDURE

Just as you can in other languages, you can create your own procedures in Oracle.

Syntax

The syntax to create a procedure in Oracle is:
CREATE [OR REPLACE] PROCEDURE procedure_name
    [ (parameter [,parameter]) ]

IS
    [declaration_section]

BEGIN
    executable_section

[EXCEPTION
    exception_section]

END [procedure_name];
When you create a procedure or function, you may define parameters. There are three types of parameters that can be declared:
  1. IN - The parameter can be referenced by the procedure or function. The value of the parameter can not be overwritten by the procedure or function.
  2. OUT - The parameter can not be referenced by the procedure or function, but the value of the parameter can be overwritten by the procedure or function.
  3. IN OUT - The parameter can be referenced by the procedure or function and the value of the parameter can be overwritten by the procedure or function.

Example

Let's look at an example of how to create a procedure in Oracle.
The following is a simple example of a procedure:
CREATE OR REPLACE Procedure UpdateCourse
   ( name_in IN varchar2 )

IS
   cnumber number;

   cursor c1 is
   SELECT course_number
    FROM courses_tbl
    WHERE course_name = name_in;

BEGIN

   open c1;
   fetch c1 into cnumber;

   if c1%notfound then
      cnumber := 9999;
   end if;

   INSERT INTO student_courses
   ( course_name,
     course_number )
   VALUES
   ( name_in,
     cnumber );

   commit;

   close c1;

EXCEPTION
WHEN OTHERS THEN
   raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM);
END;
This procedure is called UpdateCourse. It has one parameter called name_in. The procedure will lookup the course_number based on course name. If it does not find a match, it defaults the course number to 99999. It then inserts a new record into the student_courses table.

DROP PROCEDURE

Once you have created your procedure in Oracle, you might find that you need to remove it from the database.

Syntax

The syntax to a drop a procedure in Oracle is:
DROP PROCEDURE procedure_name;
procedure_name
The name of the procedure that you wish to drop.

Example

Let's look at an example of how to drop a procedure in Oracle.
For example:
DROP PROCEDURE UpdateCourse;
This example would drop the procedure called UpdateCourse

FUNCTIONS

 

This Oracle tutorial explains how to create and drop functions in Oracle/PLSQL with syntax and examples.

CREATE FUNCTION

Just as you can in other languages, you can create your own functions in Oracle.

Syntax

The syntax to create a function in Oracle is:
CREATE [OR REPLACE] FUNCTION function_name
   [ (parameter [,parameter]) ]

   RETURN return_datatype

IS | AS

   [declaration_section]

BEGIN
   executable_section

[EXCEPTION
   exception_section]

END [function_name];
When you create a procedure or function, you may define parameters. There are three types of parameters that can be declared:
  1. IN - The parameter can be referenced by the procedure or function. The value of the parameter can not be overwritten by the procedure or function.
  2. OUT - The parameter can not be referenced by the procedure or function, but the value of the parameter can be overwritten by the procedure or function.
  3. IN OUT - The parameter can be referenced by the procedure or function and the value of the parameter can be overwritten by the procedure or function.

Example

Let's look at an example of how to create a function in Oracle.
The following is a simple example of an Oracle function:
CREATE OR REPLACE Function FindCourse
   ( name_in IN varchar2 )
   RETURN number
IS
   cnumber number;

   cursor c1 is
   SELECT course_number
     FROM courses_tbl
     WHERE course_name = name_in;

BEGIN

   open c1;
   fetch c1 into cnumber;

   if c1%notfound then
      cnumber := 9999;
   end if;

   close c1;

RETURN cnumber;

EXCEPTION
WHEN OTHERS THEN
   raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM);
END;
This function is called FindCourse. It has one parameter called name_in and it returns a number. The function will return the course number if it finds a match based on course name. Otherwise, it returns a 99999.
You could then reference your new function in a SQL statement as follows:
SELECT course_name, FindCourse(course_name) AS course_id
FROM courses
WHERE subject = 'Mathematics';

DROP FUNCTION

Once you have created your function in Oracle, you might find that you need to remove it from the database.

Syntax

The syntax to a drop a function in Oracle is:
DROP FUNCTION function_name;
function_name
The name of the function that you wish to drop.

Example

Let's look at an example of how to drop a function in Oracle.
For example:
DROP FUNCTION FindCourse;
This example would drop the function called FindCourse.

COMMENTS


This SQL tutorial explains how to use comments within your SQL statements with syntax and examples.

DESCRIPTION

In SQL, you can comment your code just like any other language. Comments can appear on a single line or span across multiple lines. Let's explore how to comment your SQL statements.

SYNTAX

There are two syntaxes that you can use to create a comment in SQL.

Syntax Using -- symbol

The syntax for creating a comment in SQL using -- symbol is:
-- comment goes here
A comment started with -- symbol must be at the end of a line in your SQL statement with a line break after it. This method of commenting can only span a single line within your SQL and must be at the end of the line.

Syntax Using /* and */ symbols

The syntax for creating a comment in SQL using /* and */ symbols is:
/* comment goes here */
A comment that starts with /* symbol and ends with */ and can be anywhere in your SQL statement. This method of commenting can span several lines within your SQL.

EXAMPLE - COMMENT ON A SINGLE LINE

Let's look at an example that shows how to create a comment in SQL that is on a single line.
For example:
Here is a comment that appears on its own line in SQL:
SELECT websites.site_name
/* Author: TechOnTheNet.com */
FROM websites;
Here is a comment that appears in the middle of the line in SQL:
SELECT  /* Author: TechOnTheNet.com */  websites.site_name
FROM websites;
Here is a comment that appears at the end of the line in SQL:
SELECT websites.site_name  /* Author: TechOnTheNet.com */
FROM websites;
or
SELECT websites.site_name  -- Author: TechOnTheNet.com
FROM websites;

EXAMPLE - COMMENT ON MULTIPLE LINES

You can also create a comment that spans multiple lines in your SQL statement.
For example:
SELECT websites.site_name
/*
 * Author: TechOnTheNet.com
 * Purpose: To show a comment that spans multiple lines in your SQL statement.
 */
FROM websites;
This comment spans across multiple lines in SQL and in this example, it spans across 4 lines.
You can also create a comment that spans multiple lines using this syntax:
SELECT websites.site_name /* Author: TechOnTheNet.com
Purpose: To show a comment that spans multiple lines in your SQL statement. */
FROM websites;
SQL will assume that everything after the /* symbol is a comment until it reaches the */ symbol, even if it spans multiple lines within the SQL statement. So in this example, the comment will span across 2 lines.

How to find the first day of a month

By using the format string MM to extract the month, and then using the DAY format to return the first day of the month within the date , it is possible to find first day of a month:


select
   to_char(
      trunc(:p_date,'MM'),'DAY'
       )
from dual;

How to find dates between two given dates

By using below query, it is possible to generate dates between to given dates. 

SELECT start_date - 1 + rownum as p_date
FROM all_objects
WHERE start_date - 1 + rownum <= end_date

Monday, May 9, 2016

VIEW


This SQL tutorial explains how to create, update, and drop SQL VIEWS with syntax and examples.

DESCRIPTION

The SQL VIEW is, in essence, a virtual table that does not physically exist. Rather, it is created by a SQL statement that joins one or more tables.

CREATE SQL VIEW

Syntax

The syntax for the SQL CREATE VIEW Statement is:
CREATE VIEW view_name AS
  SELECT columns
  FROM tables
  [WHERE conditions];
view_name
The name of the SQL VIEW that you wish to create.
WHERE conditions
Optional. The conditions that must be met for the records to be included in the VIEW.

Example

Here is an example of how to use the SQL CREATE VIEW:
CREATE VIEW sup_orders AS
  SELECT suppliers.supplier_id, orders.quantity, orders.price
  FROM suppliers
  INNER JOIN orders
  ON suppliers.supplier_id = orders.supplier_id
  WHERE suppliers.supplier_name = 'IBM';
This SQL CREATE VIEW example would create a virtual table based on the result set of the select statement. You can now query the SQL VIEW as follows:
SELECT *
FROM sup_orders;

UPDATE SQL VIEW

You can modify the definition of a SQL VIEW without dropping it by using the SQL CREATE OR REPLACE VIEW Statement.

Syntax

The syntax for the SQL CREATE OR REPLACE VIEW Statement is:
CREATE OR REPLACE VIEW view_name AS
  SELECT columns
  FROM table
  [WHERE conditions];

Example

Here is an example of how you would use the SQL CREATE OR REPLACE VIEW Statement:
CREATE or REPLACE VIEW sup_orders AS
  SELECT suppliers.supplier_id, orders.quantity, orders.price
  FROM suppliers
  INNER JOIN orders
  ON suppliers.supplier_id = orders.supplier_id
  WHERE suppliers.supplier_name = 'Microsoft';
This SQL CREATE OR REPLACE VIEW example would update the definition of the SQL VIEW called sup_orders without dropping it. If the SQL VIEW did not yet exist, the SQL VIEW would merely be created for the first time.

DROP SQL VIEW

Once a SQL VIEW has been created, you can drop it with the SQL DROP VIEW Statement.

Syntax

The syntax for the SQL DROP VIEW Statement is:
DROP VIEW view_name;
view_name
The name of the view that you wish to drop.

Example

Here is an example of how to use the SQL DROP VIEW Statement:
DROP VIEW sup_orders;
This SQL DROP VIEW example would drop/delete the SQL VIEW called sup_orders.