Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / помогите с запросом / 4 сообщений из 4, страница 1 из 1
21.10.2014, 10:20:44
    #38782512
Perederiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите с запросом
есть таблица с одной записью
наименование полей:
pole1,pole2,pole3,pole4,pole5

надо получить из нее запрос с несколькими записями

1, 'текст',pole1 as pole
2, 'текст',pole2 as pole
3, 'текст',pole3 as pole
4, 'текст',pole4 as pole
5, 'текст',pole5 as pole

Как это сделать с помощью select ?
...
Рейтинг: 0 / 0
21.10.2014, 10:30:33
    #38782520
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите с запросом
Perederiy,

Код: sql
1.
2.
3.
4.
5.
6.
SELECT 1 AS id, 'text' AS val, pole1 AS pole FROM tab WHERE ... UNION ALL
SELECT 2 AS id, 'text' AS val, pole2 AS pole FROM tab WHERE ... UNION ALL
SELECT 3 AS id, 'text' AS val, pole3 AS pole FROM tab WHERE ... UNION ALL
SELECT 4 AS id, 'text' AS val, pole4 AS pole FROM tab WHERE ... UNION ALL
SELECT 5 AS id, 'text' AS val, pole5 AS pole FROM tab WHERE ...
ORDER BY 1,3
...
Рейтинг: 0 / 0
21.10.2014, 11:33:46
    #38782609
Gold_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите с запросом
Perederiy,

Код: plsql
1.
2.
3.
SELECT * 
FROM generate_series(1,5)g
CROSS JOIN tab
...
Рейтинг: 0 / 0
21.10.2014, 13:41:29
    #38782817
Лопата
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите с запросом
Gold_Perederiy,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT
 g 
 ,CASE g 
 WHEN 1 THEN field1
 WHEN 2 THEN field2
 ...
 WHEN 5 THEN field5
 END AS field
FROM generate_series(1,5)g
CROSS JOIN tab
-- уточнил мысль
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / помогите с запросом / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]