How can you split a table in to exactly half?
Answers were Sorted based on User's Feedback
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 |
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 |
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 |
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 |
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 |
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 |
For Null indicator we have 3 values 0,-1,-2. 0->Not nulll -1->Null -2->Value truncated If ther is any possibility to have any positive value other than 0 in Null indicator.If it is so then when we will get and what is the value?
Discuss about db2 bind?
How would you find out the total number of rows in a db2 table?
OUTER JOINS USED TO GET MATCHING AND NONMATCHING ROWS FORM 2 OR MORE TABLES BASED ON COLUMNS. SIMPLE JOINS ALSO DO THE SAME THEN WHAT IS THE USE OF OUTER JOINS.
What is the difference between Where and Having Clause
What is meant by dclgen?
What do you need to do before you do EXPLAIN ?
How connect db2 database to datastage?
What is check constraint in db2?
What is copy pending status in db2?
What is correlated subquery?
What is the syntax required for the creation of a cursor?