DB2 SQL adds rows based on other rows

I have a select statement that I want to use as the basis for adding more rows to the table. New rows will have some columns changed, and the original row also needs to be changed.

This is a random situation, and the DB may be disabled if this helps.

Any ideas?

Thanks Joe

==================

Description Update

MBANK table

       | MID | MAGN | MAAID | MTYPEOT | MAVAILS | MUSER | MTS
OLD     | 65 | 9 | 3 | 2 | A | NAME | 20090909
NEW     | 65 | 10 | 0 | 2 | A | NAME | 20090910
CHANGE | SAME | +1 | TO 0 | SAME | New = A Old = O | SAME | TIMESTAMP

This needs to be done for approximately 4,000 entries to choose from.

* MDSTD.MBANK, MTYPEOT = '2' MAVAILS = 'A'

+3
2

DrJokepu , , , "" . I.e.: +1 2- ? "", , , ?

DB2 SQL- (, DB2) SELECT INTO MS-SQL , .

, :

  • , select (, "" )
  • (, "" ), .

, , 2.

1 , Dr.Jokepu :

INSERT INTO <table> (values) SELECT "values" FROM <anotherTable>;

2, , :

INSERT INTO MDSTD.MBANK ( MID, MAGN, MAAID, MTYPEOT, MAVAILS, MUSER, MTS)
SELECT 
      MID 
     ,MAGN + 1
     ,0 as MAAID
     ,MTYPEOT
     ,'A' as MAVAILS
     ,MUSER
     ,GETDATE() 
FROM mdstd.mbank 
WHERE MTYPEOT = '2' and MAVAILS = 'A'

( , GETDATE() - MS-SQL, DB/2 ).

:

"New = A Old = O"

"O", ? , , .

"" ( ), .

UPDATE , , :

  • ( ), .
  • , .

, , "" , , , , .

- , ( "" , ). "" ( CLAUSE, , ), "" , , , , ( "" ), . , .

!

, , .

+3

INSERT... SELECT, , DB2:

INSERT INTO MY_TABLE (LOL, ROTFL, LONGCAT)
SELECT LOL, ROTFL, 'CUSTOM_VALUE'
FROM MY_TABLE
WHERE ID = 1337

where, :

UPDATE MY_TABLE
SET LOL = 9000
WHERE ID = 1337

DB2 , :

INSERT INTO MY_TABLE (LOL, ROTFL, LONGCAT)
SELECT LOL, ROTFL, 'CUSTOM_VALUE'
FROM MY_TABLE
WHERE ID = 1337;
UPDATE MY_TABLE
SET LOL = 9000
WHERE ID = 1337;
+2

Source: https://habr.com/ru/post/1717424/


All Articles