Re: [pgsql-ru-general] Re[2]: [pgsql-ru-general] Re: [pgsql-ru-general] порядок вставки
От | Андрей Зевакин |
---|---|
Тема | Re: [pgsql-ru-general] Re[2]: [pgsql-ru-general] Re: [pgsql-ru-general] порядок вставки |
Дата | |
Msg-id | CAGfSdS77Nxaa=n-0JmabA_b=OF=qERRFCnpLeVR7pev80jVkmg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [pgsql-ru-general] порядок вставки (Иван Фролков <ifrol2001@mail.ru>) |
Список | pgsql-ru-general |
Как насчет:
WITH
"a" AS (
SELECT 1 AS "col", 1 as part,
),
"b" AS (
SELECT 2 AS "col", 2 as part,
),
"bc" AS (
SELECT
*
FROM
"a"
UNION ALL
SELECT
*
FROM
"b"
)
INSERT INTO "table" ("col")
SELECT
comWITH
"a" AS (
SELECT 1 AS "col", 1 as part,
row_number() over () as num
),
"b" AS (
SELECT 2 AS "col", 2 as part,
row_number() over () as num
),
"bc" AS (
SELECT
*
FROM
"a"
UNION ALL
SELECT
*
FROM
"b"
)
INSERT INTO "table" ("col")
SELECT
FROM
"bc"
"bc"
order by part, num;
С уважением, Андрей Зевакин.
20 октября 2015 г., 14:22 пользователь Dmitry E. Oboukhov <unera@debian.org> написал:
>> вопрос в том сохранится ли он в insert-select.
> И, кстати, а какая, собственно, разница в каком порядке будут добавлены строки?
в таблицу записываем произошедшие одно за другим события.
SERIAL в первичном ключе таким образом определяет какое событие было
раньше какое позже (таймстемп тоже есть, но он больше декоративный)
поэтому порядок INSERT'ов мне важен.
а тут получается что в одном SQL запросе получаем два события зараз (в
двух секциях WITH). и хочу сохранить их в нужном порядке--
. ''`. Dmitry E. Oboukhov
: :’ : email: unera@debian.org jabber://UNera@uvw.ru
`. `~’ GPGKey: 1024D / F8E26537 2006-11-21
`- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iEYEAREDAAYFAlYmB74ACgkQq4wAz/jiZTeniQCguYM6XnhAOqxtRg9zC1icRmw7
+YIAnjmLepTZJ046FRW77vNYBmVFH5qv
=nGH1
-----END PGP SIGNATURE-----
В списке pgsql-ru-general по дате отправления: