1) What is dense ranking?
2) Difference between Substring and Instring?
3) Case and Decode?
4) Pseudo column?
5) View vs Materialized views?
6) SQl performance tuning?

Answer Posted / usingh

1.>> Both are the analytical function and these function gives rank based on some column.

RANK : RANK gives you the ranking within your ordered portion. Ties are assigned the same rank, with the next ranking skipped.

RANK
1
2
3
3 [missed the 4th Rank]
5
6

DENSE_RANK : In this the Ranks are consecutive. No ranks are skipped if there are same ranks.

DENSE_RANK
1
2
3
3 [does not miss the Rank]
4
5


2.>> SUBSTR : The SUBSTR functions return a portion of char, beginning at character position, substring_length characters long.
Example: SELECT SUBSTR('ABCDEFG',3,4) FROM DUAL; =>CDEF
SELECT SUBSTR('ABCDEFG',-5,4) FROM DUAL; => CDEF
The INSTR functions search string for substring. The function returns an integer indicating the position of the character in string that is the first character of this
occurrence. INSTR calculates strings using characters as defined by the input character set. INSTRB uses bytes instead of characters.
Example: INSTR('Tech on the net','e') => 2; the first occurrence of 'e'
INSTR('Tech on the net', 'e', 1, 2)=> 11; the second occurrence of 'e'

3.>> DECODE performs an equality check only. CASE is capable of other logical comparisons such as < > etc.
DECODE works with expressions which are scalar values. CASE can work with predicates and subqueries in searchable form.
CASE executes faster in the optimizer than does DECODE.
CASE is a statement while DECODE is a function.
In decode we cant use for range(like 2000 to 4000 etc.), but case we can.
DECODE can work as a function inside SQL only. CASE can be an efficient substitute for IF-THEN-ELSE in PL/SQL.
DECODE can be used Only inside SQL statement.... 5. But CASE can be used any where even as a parametr of a function/procedure
CASE handles NULL values differently.


4.>>A pseudo column behaves like a table column, but is not actually stored in the table. You can select from pseudo columns, but you cannot insert, update, or delete their values.
EX : ROWNUM,ROWID,SYSDATE,USER,UID, SEQUENCE... ect

ROWID : ROWID is alphanumaric value which represents an address of required.
- ROWID is generated by the oracle for each record inserted in the table.
- ROWID Removed when the record get deleted from table.

ROWNUM : It is serial no. or sequential no. which is genetated as when the record retried.
- ROWNUM keeps on chenging.
- It is generated on the Runtime.

5.>> - View will not store any data whereas Materialized view will store data.
- View is mainly used for security purpose, Materialized view is used for performance sake.
- Base table is droped, the view will not be accessible, whereas Materialized view will be still be accessible.
- DML Operation can perform directly in view, whereas in Materialized view can not perform directly.

Is This Answer Correct ?    1 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

How to check the oracle tns settings?

573


Explain the difference between a procedure and a function?

557


How to use subqueries in the from clause in oracle?

579


What is a view and how is it different from a table?

572


How would you change old and new values in an insert, delete and update triggers?

541






How to lock and unlock a user account in oracle?

612


Explain the different normalization forms?

591


What happens to the indexes if a table is recovered?

579


How we can able to import our own template (users designed MS-Word templates) which has many tabular columns; need to pass some values generate by Oracle-reports9i? Actually need to import more than 400 MS-Word templates into Oracle Reports-9i to minimize layout design in Reports.

1611


What is the usage of synonyms?

585


How to loop through data rows in the implicit cursor?

539


Is truncate autocommit in oracle?

635


What are the restrictions on external table columns?

550


How do you find out from the RMAN catalog if a particular archive log has been backed-up?

1659


normally database take to refresh time 2 hours. but client asked iwant to refresh with in 5 min that same database. do you have any option in BO and Oracle? explain me briefly...kavi

1738