POUWIEL|COM

JeroenPouwiel

Some PostgreSQL scripthingie

DO $$
  DECLARE
    i_lower integer;
    i_upper integer;
  BEGIN
    SELECT MAX(a)+1, MAX(a)+10 INTO i_lower, i_upper FROM blaat;
    FOR r in i_lower..i_upper LOOP
      INSERT INTO blaat (a, b) (SELECT r,
                                       ARRAY_TO_STRING(ARRAY
                                                            (SELECT SUBSTR('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789',
                                                                           ((RANDOM()*(36-1)+1)::INTEGER),
                                                                           1)
                                                               FROM generate_series(1,10)
                                                            ),
                                                            ''
                                                      )
                               );
    END LOOP;
  END;
$$;

That makes it go from:

a | b
----+------------
1 | Z7RGBNIN26
2 | D8QZ8ROZS2
3 | 6EUK0P5KKZ
4 | 719OWTTWVY
5 | 1LBXB8RSGB
6 | YA6O7HTATW
7 | 5UXAPFA478
8 | W4135F2KEK
9 | JTJF0E93X4
10 | FV5S9DYH1G
(10 rows)
to:

a | b
----+------------
1 | Z7RGBNIN26
2 | D8QZ8ROZS2
3 | 6EUK0P5KKZ
4 | 719OWTTWVY
5 | 1LBXB8RSGB
6 | YA6O7HTATW
7 | 5UXAPFA478
8 | W4135F2KEK
9 | JTJF0E93X4
10 | FV5S9DYH1G
11 | GXK0F55EDR
12 | WT4P0F7M1X
13 | SKTP3N3HQY
14 | JEPO605JVM
15 | E62FCTMMV3
16 | B0MH3CWSHJ
17 | X0PYJ6KMGU
18 | RNB6NYQ80I
19 | IWU70W3GC7
20 | FFUB3JT131
(20 rows)

Comments are closed.

Categories