How to find the third element table pl/sql ina
Hello friends,I have a pl/sql table of NUMERIC type, where am store all salaries of employees.
I want to find the third bigger payday by browsing through the pl/sql table.
Pls advice.
Thank you/kumar
DECLARE
TYPE max_earnings_type IS TABLE OF NUMBER;
TYPE max_earnings_sorted_type IS TABLE OF NUMBER
INDEX BY BINARY_INTEGER;
max_earnings_tab max_earnings_type;
max_earnings_tab_sorted max_earnings_sorted_type;
m number;
BEGIN
SELECT sal + comm
BULK COLLECT
INTO max_earnings_tab
FROM emp;
FOR v_i in 1..max_earnings_tab.count LOOP
IF max_earnings_tab(v_i) IS NOT NULL
THEN
max_earnings_tab_sorted(max_earnings_tab(v_i)) := 1;
END IF;
END LOOP;
m := max_earnings_tab_sorted.last;
DBMS_OUTPUT.PUT_LINE('MAX value in PL/SQL table is ' || nvl(to_char(m),'NULL'));
m := max_earnings_tab_sorted.prior(m);
DBMS_OUTPUT.PUT_LINE('Second MAX value in PL/SQL table is ' || nvl(to_char(m),'NULL'));
m := max_earnings_tab_sorted.prior(m);
DBMS_OUTPUT.PUT_LINE('Third MAX value in PL/SQL table is ' || nvl(to_char(m),'NULL'));
END;
/
MAX value in PL/SQL table is 2650
Second MAX value in PL/SQL table is 1900
Third MAX value in PL/SQL table is 1750
PL/SQL procedure successfully completed.
SQL>
SY.
Tags: Database
Similar Questions
-
How to find the user Apex table
Hello
Please let me know, how to find the user apex table. I need validate the unique user based on the same, for which I use below function.
DECLARE
VAL A BOOLEAN;
BEGIN
VAL: = APEX_UTIL.IS_USERNAME_UNIQUE (p_username =
(: P6_USERNAME);
END;
However, in this case, he always comes back "FALSE," saying new user exists.
Kindly help me in fixing this problem.There is a view called apex_workspace_apex_users.
Details under Home > utilities > Application Express views
André
-
How to find the definition of an indextype sql
Hi all
I would like to know how to find the "indextype" sql definition...?
could not understand this. I even tried sql developer and TOAD to extract the sql definition but couldn't!
Thanks in advance.
Hello
You can use the dbms_metadata.getddl
the query would be like this:
Select dbms_metadata.get_ddl ('INDEXTYPE', 'indextype_name') of double;
How to recover or retrieve oracle database operator. Master of geodata
Kind regards
-
How to use the T distribution table in sql statements?
Hi all
I'm in the need to use the T distribution table in sql... I don't know how to use...
Is there a function to use the values of table in sql statements?
Can someone please help me in this?How about this http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/functions157.htm#i1279931?
Concerning
Etbin
-
How to find the names of tables that have more than 100 columns
Hi gurus,
Please help me find the names of the tables that have more than 100 columns in the database.Below will be useful for you.
SELECT atc.OWNER,atc.TABLE_NAME,count(*) FROM all_tab_columns atc GROUP BY atc.OWNER,atc.TABLE_NAME HAVING count(atc.COLUMN_NAME) > 100
Adding another point, you can use user_tab_columns, all_tab_columns, dba_tab_columns, based on your needs/access.
Thank you
SuriPublished by: Suri on February 23, 2012 11:30
-
How to find the foreign key in pl/sql
Error from the 1 in the command line:
DELETE FROM ZKET_SOLE WHERE IID_SOLA = 1
Error report:
SQL error: ORA-02292: integrity constraint (IRCKIS. ZKETSTIP_ZKET_FK) violated - book of the foundling
02292 00000 - 'constraint integrity (s.%s) violated - child notebook found. '
* Cause: attempted to remove a parent key value that was a stranger
dependence.
* Action: remove dependencies first then the parent or disable the constraint.
I need to find the foreign key, but I don't know how. I know it must be in the dictionary, but I'm not. I don't have access to the ER model.
THXRun this query:
select * from dba_constraints where owner = 'IRCKIS' and constraint_name = 'ZKETSTIP_ZKET_FK'
-
How to find the redo generated by each SQL statement?
Database version is 10.2.0.4. OS is AIX.
We must again excessive generation during a specific time. We want to identify what a statement contributes to excessive recovery.
ADDM shows this as a first observation
Waiting on event "log file sync" during the execution of operations of COMMIT and ROLLBACK consumed at the time of the important data.
Is it possible to know which statement sql generates how many redo in bytes for a moment?
Thank you
DelphineIs it possible to know which statement sql generates how many redo in bytes for a moment?
It will not help you.
For example, you can see a lot of UPDATE, DELETE, INSERT from the apps statements. Then? What you do with them? If you can modify the application to eliminate the useless LMD - it would be great of course. But it is unlikely.When the DML statements also generate Redo, does not cause them too much expectations "log file sync", because the writer log buffer empty buffer as soon as it fulfills more than 30% after a certain time or on Commit / Rollback.
Waiting on event "log file sync" during the execution of operations of COMMIT and ROLLBACK consumed at the time of the important data.
Right. This is because the writer written newspaper here synchronous, reliable, he waits until the HDD writes data down and meets its written OK.
And hard drives are not the fastest things in the computer. They are mechanical - that's why.I would recommend:
1. place files redo log on quick drives used preference dedicated only to this end. If other I/O will often disturb these readers resulting securities heads change causing longer HDD expected.
2 consider using faster technology such as SAN or SSD. -
How to find the serial number of the processor in the MacBook pro s serial number? I have a dead MacBook that was given for service to a third party. I doubt that they have replaced the original parts. Help, please. Thank you
As far as I KNOW, the serial number of the MacBook does not have the serial number of the processor.
-
How to find the value max and min for each column in a table 2d?
How to find the value max and min for each column in a table 2d?
For example, in the table max/min for the first three columns would be 45/23, 14/10, 80/67.
Thank you
Chuck,
With color on your bars, you should have enough experience to understand this.
You're a loop in the table already. Now you just need a function like table Max and min. loop. And you may need to transpose the table 2D.
-
How to find the primary key columns in the tables in MS Access using SQL queries
How to find the primary key columns in the tables in MS Access using SQL queries
Hello
This is the forum for Windows Vista programs related issues.
For better assistance, please try instead the Forums in SQL Server .
Thank you! Vincenzo Di Russo - Microsoft MVP Windows Internet Explorer, Windows Desktop Experience & security - since 2003. ~ ~ ~ My MVP profile: https://mvp.support.microsoft.com/profile/Vincenzo
-
How to find the size of the table?
Hi all
Can anyone suggest how to find the size of the table? I had a few (15272 selected lines) on the name of "CMPT_" How can I check only 'CMPT_' size tables?
Please someone help give the SQL query to run.
Thanks in advance.
Vincent
madala03 wrote:
Hi thanks for the reply
I'm out like below
SUM(BYTES/1024/1024)
--------------------
25383.25
But how to check all the name of tables CMPT and their sizes?
Select nom_segment, dba_Segments sum(bytes/1024/1024) where nom_segment like ' % CMPT GROUP BY nom_segment;
-
How to find the size of the partitioned tables?
How to find the size of the partitioned tables?Select nom_segment, sum (bytes) /(1024*1024) 'Size in MB' from dba_segments
where owner = 'owner name' and segment_type like '% PARTITION % '.
Group by nom_segment; -
How to find the relationship between the tables
Hello
I am working in Oracle R12
How to find the relationship between these tables INV_MIN_MAX_TEMP, po_requisition_lines_all and Per_all_people_f
These two tables, I joined with po_requisition_lines_all and Per_all_people_f To_person_id of PO and anyone HR table but I can't able to join this table with other tables INV_MIN_MAX_TEMP
concerning
Srikkanthsolved
-
How to find the child level for each table in a relational model?
Earthlings,
I need your help, and I know that, "Yes, we can change." Change this thread to a question answered.
So: How to find the child level for each table in a relational model?
I have a database of relacional (9.2), all right?
Tips:. O /* This is a child who makes N references to each of the follow N parent tables (here: three), and so on. */ /↑\ Fks O"O O" <-- level 2 for first table (circle) /↑\ Fks "o"o"o" <-- level 1 for middle table (circle) ↑ Fk "º"
-Each circle represents a table;
-Red no tables have foreign key
-the picture on the front line of tree, for example, a level 3, but when 3 becomes N? How is N? That is the question.
I started to think about the following:
First of all, I need to know how to take the kids:
Thought...select distinct child.table_name child from all_cons_columns father join all_cons_columns child using (owner, position) join (select child.owner, child.constraint_name fk, child.table_name child, child.r_constraint_name pk, father.table_name father from all_constraints father, all_constraints child where child.r_owner = father.owner and child.r_constraint_name = father.constraint_name and father.constraint_type in ('P', 'U') and child.constraint_type = 'R' and child.owner = 'OWNER') aux using (owner) where child.constraint_name = aux.fk and child.table_name = aux.child and father.constraint_name = aux.pk and father.table_name = aux.father;
We will share!
Thanks in advance,
Philips
Published by: BluShadow on April 1st, 2011 15:08
formatting of code and hierarchy for readbilityHave you looked to see if there is a cycle in the graph of dependence? Is there a table that has a foreign key to B and B has a back of A foreign key?
SQL> create table my_emp ( 2 emp_id number primary key, 3 emp_name varchar2(10), 4 manager_id number 5 ); Table created. SQL> ed Wrote file afiedt.buf 1 create table my_mgr ( 2 manager_id number primary key, 3 employee_id number references my_emp( emp_id ), 4 purchasing_authority number 5* ) SQL> / Table created. SQL> alter table my_emp 2 add constraint fk_emp_mgr foreign key( manager_id ) 3 references my_mgr( manager_id ); Table altered. SQL> ed Wrote file afiedt.buf 1 select level lvl, 2 child_table_name, 3 sys_connect_by_path( child_table_name, '/' ) path 4 from (select parent.table_name parent_table_name, 5 parent.constraint_name parent_constraint_name, 6 child.table_name child_table_name, 7 child.constraint_name child_constraint_name 8 from user_constraints parent, 9 user_constraints child 10 where child.constraint_type = 'R' 11 and parent.constraint_type = 'P' 12 and child.r_constraint_name = parent.constraint_name 13 union all 14 select null, 15 null, 16 table_name, 17 constraint_name 18 from user_constraints 19 where constraint_type = 'P') 20 start with child_table_name = 'MY_EMP' 21* connect by prior child_table_name = parent_table_name SQL> / ERROR: ORA-01436: CONNECT BY loop in user data
If you have a cycle, you have some problems.
(1) it is a NOCYCLE keyword does not cause the error, but that probably requires an Oracle version which is not so far off support. I don't think it was available at the time 9.2 but I don't have anything old enough to test on
SQL> ed Wrote file afiedt.buf 1 select level lvl, 2 child_table_name, 3 sys_connect_by_path( child_table_name, '/' ) path 4 from (select parent.table_name parent_table_name, 5 parent.constraint_name parent_constraint_name, 6 child.table_name child_table_name, 7 child.constraint_name child_constraint_name 8 from user_constraints parent, 9 user_constraints child 10 where child.constraint_type = 'R' 11 and parent.constraint_type = 'P' 12 and child.r_constraint_name = parent.constraint_name 13 union all 14 select null, 15 null, 16 table_name, 17 constraint_name 18 from user_constraints 19 where constraint_type = 'P') 20 start with child_table_name = 'MY_EMP' 21* connect by nocycle prior child_table_name = parent_table_name SQL> / LVL CHILD_TABLE_NAME PATH ---------- ------------------------------ -------------------- 1 MY_EMP /MY_EMP 2 MY_MGR /MY_EMP/MY_MGR 1 MY_EMP /MY_EMP 2 MY_MGR /MY_EMP/MY_MGR
(2) If you try to write on a table and all of its constraints in a file and do it in a valid order, the entire solution is probably wrong. It is impossible, for example, to generate the DDL for MY_EMP and MY_DEPT such as all instructions for a table come first, and all the instructions for the other are generated second. So even if NOCYCLE to avoid the error, you would end up with an invalid DDL script. If that's the problem, I would rethink the approach.
-Generate the DDL for all tables without constraint
-Can generate the DDL for all primary key constraints
-Can generate the DDL for all unique key constraints
-Can generate the DDL for all foreign key constraintsThis is not solidarity all the DOF for a given in the file object. But the SQL will be radically simpler writing - there will be no need to even look at the dependency graph.
Justin
-
How to find the second largest in a pl/sql table
Hello friends,
I want to find the first and second maximum items in a pl/sql table.
Here's the code...
DECLARE
Max_earnings_type TYPE TABLE IS NUMBER;
max_earnings_tab max_earnings_type: = max_earnings_type();
number of v_count: = 0;
number of v_max_earnings;
Can someone give me how to find the maximum first max and second in the type of the given table.
appreciate your help.
Thank you/kumar
Published by: kumar73 on October 21, 2010 09:42kumar73 wrote:
When I tried to implement your logic in my application, I get the following error...
PL/SQL: digital or value error: NULL index key value table
What happens if the PL/SQL table has NULL values. Question is how you want to handle NULL values. You want to ignore nulls as GROUP BY do? If you want to consider NULL values, you can say if you want to order the NULLS FIRST or NULLS LAST. I guess that logical GROUP BY:
DECLARE TYPE max_earnings_type IS TABLE OF NUMBER; TYPE max_earnings_sorted_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER; max_earnings_tab max_earnings_type; max_earnings_tab_sorted max_earnings_sorted_type; BEGIN SELECT sal + comm BULK COLLECT INTO max_earnings_tab FROM emp; FOR v_i in 1..max_earnings_tab.count LOOP IF max_earnings_tab(v_i) IS NOT NULL THEN max_earnings_tab_sorted(max_earnings_tab(v_i)) := 1; END IF; END LOOP; DBMS_OUTPUT.PUT_LINE('MAX value in PL/SQL table is ' || nvl(to_char(max_earnings_tab_sorted.last),'NULL')); DBMS_OUTPUT.PUT_LINE('Second MAX value in PL/SQL table is ' || nvl(to_char(max_earnings_tab_sorted.prior(max_earnings_tab_sorted.last)),'NULL')); END; / MAX value in PL/SQL table is 2650 Second MAX value in PL/SQL table is 1900 PL/SQL procedure successfully completed. SQL> SELECT sal + comm 2 FROM emp; SAL+COMM ---------- 1900 1750 2650 1500 SAL+COMM ---------- 14 rows selected. SQL>
SY.
Maybe you are looking for
-
A button to the Firefox window in the taskbar instead of several
I want just one button in the taskbar of my computer for the Firefox window and not several, each window for each open tab. How can I do?
-
In my Windows xp home edition, you have forgotten password of connection.
How can I get automatically. As long as administrator, I have tried so many different things all night, can you please help?
-
Support for iTunes playlists?
I missed on the support of playlists on the media center. I see the ability to add songs to a playlist that is generic, but I don't seem to see any support for playlists even static or dynamic based on different metadata of the file. Ideally, I wou
-
Blue error screen: 0x0000c1f5
When I was installing windows update for service pack 1, it does not settle and to restart, it's what happens every time 1.) Windows error recovery screen Windows could not start. A recent change of goods or hard software could be the cause. If windo
-
Unable to sign in the ePrintCenter
I get an error message when I try to connect. Ajax submit failed: Error = 403 Forbidden