How can you split a table in to exactly half?

Answers were Sorted based on User's Feedback



How can you split a table in to exactly half?..

Answer / nirmal khatri

Hi

We can do it by SQL also, below is SQL which is working on
iSeries(AS/400)

insert into nk11581/temp1 (select * from nk11581/temp1
where rrn(temp1) in(
SELECT distinct dec((rrn(temp1)/2)) FROM nk11581/temp1
))

Is This Answer Correct ?    3 Yes 1 No

How can you split a table in to exactly half?..

Answer / reddy kanupuru

Hi,

Here i am giving the procedure , how to make the table into
half..... using program... I dont know whether any direct
SQL command is there or not. This is just for ur idea what
i know.

1) Find the total number of rows in a table using count(*)

2) Declare two variable in working storage section.
eg: 02 A pic 9(4) .
02 B pic 9(2).

store the count no into one variable .assume u stored that
in A.

then divide that by 2. so u will get half of the rows in a
table. strore that value in B.

3) Take another variable name C .

eg: 02 c pic 9(4) value 0.

perform para1 until B =C

para1:

Retrive the row from the table.

move to corresponding host variables ( use table to store
muliple rows ).

insert into table(u can insert multiple rows at a time ...)

do the same for storing the other half into the another
table.

means here 1 st half rows were stored in one temp
table .... the other in the one table.

Is This Answer Correct ?    4 Yes 3 No

How can you split a table in to exactly half?..

Answer / pavani

i forgot to mention the c value increment in the above
mail.increment the c value after each row retrieved.

Is This Answer Correct ?    2 Yes 1 No

How can you split a table in to exactly half?..

Answer / sachin

ADDING TO ans1
no need to write perform

direct use below query

select * from table fech first :b rows only.

Is This Answer Correct ?    1 Yes 1 No

How can you split a table in to exactly half?..

Answer / arpita

We can achieve this by using STRSQL and CPYF commands as
follows -

Type STRSQL, Press Shift + F1, option1 Change session
attributes.Type 3 for SELECT option, specify the output
file name and library (must be created in QTEMP, for a
temporary file). Press ENTER twice.

Then, type the following query -
select * from SAHAA/EMPDATA1
where rrn(EMPDATA1) in(
SELECT distinct dec((rrn(EMPDATA1)/2)) FROM SAHAA/EMPDATA1
) --> use your file and library name

Press Enter, the message File TEMP in QTEMP was created.
Restore the previous session attributes as follows -

Press Shift + F1, option1 Change session attributes.Type 1
for SELECT option. Press ENTER thrice.

Now, we would have half no. of records of EMPDATA1 in file
TEMP (say)

Now, simply use the CPYF command to copy TEMP file data
into EMPDATA1 as follows -

CPYF FROMFILE(QTEMP/TEMP) TOFILE(SAHAA/EMPDATA1) MBROPT
(*REPLACE)

Note:- TEMP is the file temporarily created in QTEMP, so
that it is no longer present in the system when the session
expires.

Is This Answer Correct ?    0 Yes 1 No

How can you split a table in to exactly half?..

Answer / kumar

ohh.. just manage the ws-count variable..

Is This Answer Correct ?    0 Yes 2 No

How can you split a table in to exactly half?..

Answer / kumar

Hi ............
try this one ....might be a logical one ... but have to
give customers what they want.....

Select count(*) into :ws-count from emp with ur;

Declare CURSOR cursor1 for
Select *(if possible better code all fields)
from emp where count(*) < :ws-count;
Open cursor
Fetch cursor.

Declare CURSOR cursor2 for
Select *(if possible better code all fields)
from emp where

count(*) >= :ws-
count;
Open cursor
Fetch cursor.

Is This Answer Correct ?    0 Yes 4 No

Post New Answer

More DB2 Interview Questions

What is the role of data manager in the db2 database?

0 Answers  


4. A DB2 application is bound with uncommitted Read isolation level.It issues a request that retrieves 20 rows out of 200000 in the table. Which of the following descrbes the rows that are locked as a result of this request? a. None of the rows are locked. B.The retrieved rows are locked. C.The last row of the result set is locked. D.The rows not previously updated by another application are locked.

3 Answers   Wipro,


How do I delete a column in db2?

0 Answers  


What is explain in db2?

0 Answers  


can any one expalin check point with an example?

1 Answers  






select * from orders where odate between '2010-01-01'and '2010-03-31' How do u fetch this into cursor?

2 Answers  


How do I optimize a query in db2?

0 Answers  


What is a composite index and how does it differ from a multiple index?

1 Answers  


Why db2 is called db2?

0 Answers  


what is dynamic cursor?gives syntax for this?

1 Answers   TCS,


Write a query to extract first 5 characters of a name in the column Stud_Name?

1 Answers   RBS,


What is an access path?

3 Answers  


Categories