Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
30.03.2018, 08:16
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
1) select (1,2,3) row record (1,2,3) 2) SELECT generate_series(1,3) generate_series integer 1 2 3 Как привести второй вариант к первому варианту ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 08:38
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiy, Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 08:45
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
Alex__kK, unnset integer 1 2 3 Не то ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 09:04
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiy, А, тебе в обратную сторону надо... я неправильно прочитал Код: plsql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 09:24
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
Alex__kK, В итоге получается text. А как его перевести в record ? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 10:02
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
PerederiyAlex__kK, В итоге получается text. А как его перевести в record ? как-то так: select (d) from (select generate_series(1,3)::varchar d) a ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 10:07
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
нет, не так record тут не может получиться, т.к. он колонки объединяет, а тут строки массив тут: select array_agg(a) from (select generate_series(1,3)) a; ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 10:50
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiy, Продолжаем дальше гадать на кофейной гуще ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 11:16
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
PerederiyAlex__kK, В итоге получается text. А как его перевести в record ? Объясните зачем. За 18 лет работы с postgres никогда не приходилось анонимные рекорды генерировать через generate_series и вообще из строк. Скорее всего вы что то не то делаете. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 18:27
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Maxim BogukPerederiyAlex__kK, В итоге получается text. А как его перевести в record ? Объясните зачем. За 18 лет работы с postgres никогда не приходилось анонимные рекорды генерировать через generate_series и вообще из строк. Скорее всего вы что то не то делаете. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru да пивот он хочет динамический. последний раз я такое делал через генерацию динамо препаре в анонимке и его екзекъют сразу за, вне оной. мультикомандой. (анонимку можно заменить хранимкой) да и препаред можно курсором заменить. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 18:50
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
qwwq, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 20:38
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
Maxim Boguk, исходный запрос был select * from table where d in (1,2,3) все работало но изменились условия - количество членов в (1,2,3) может любым те надо типа select * from table where d in (generate_series (1,2,3)) но так не работает ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 20:41
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
те надо типа select * from table where d in (generate_series (1,3)) но так не работает ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:10
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiy, Заменить generate_series() на VALUES попробовать стоит. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:15
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiyвсе работало но изменились условия - количество членов в (1,2,3) может любым Ммм, если вы знаете начало и конец - то и напишите запрос на диапазон. Если вам нужен in по списку значений - то и напишите in со списком значений Вы явно придумываете проблему там где её нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:15
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiy, мда. Код: sql 1. 2. 3.
все равно непонятно, зачем такая конструкция с in и generate_series может понадобиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:23
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
Melkij, ничего не понял можно примеры ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:27
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
AlexiusPerederiy, мда. Код: sql 1. 2. 3.
все равно непонятно, зачем такая конструкция с in и generate_series может понадобиться. второй запрос работать не будет мне надо сравнить значение с одной из цифр входящих в числовой ряд конечное значение ряда может меняться ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:30
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiy, Код: sql 1.
Код: sql 1.
Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:32
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
tip78, select * from price where price_id in ( select array_agg(a) from (select generate_series(1,3)) a) ШИБКА: оператор не существует: integer = record[] СТРОКА 1: select * from price where price_id in ( ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:36
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
PerederiyAlexiusPerederiy, мда. Код: sql 1. 2. 3.
все равно непонятно, зачем такая конструкция с in и generate_series может понадобиться. второй запрос работать не будет мне надо сравнить значение с одной из цифр входящих в числовой ряд конечное значение ряда может меняться Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:39
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiytip78, select * from price where price_id in ( select array_agg(a) from (select generate_series(1,3)) a) ШИБКА: оператор не существует: integer = record[] СТРОКА 1: select * from price where price_id in ( Код: sql 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:41
|
|||
---|---|---|---|
|
|||
generate_series: как ? |
|||
#18+
qwwq, так работает но мне надо сравнить одно id integer в этом случае не работает ... |
|||
:
Нравится:
Не нравится:
|
|||
|
30.03.2018, 21:50
|
|||
---|---|---|---|
generate_series: как ? |
|||
#18+
Perederiytip78, select * from price where price_id in ( select array_agg(a) from (select generate_series(1,3)) a) ШИБКА: оператор не существует: integer = record[] СТРОКА 1: select * from price where price_id in ( Код: sql 1. 2.
а вот тут случился колхоз обыкновенный. печаль. Код: sql 1. 2. 3. 4. 5. 6. 7.
2ТС вы таки протрезвейте для начала. потом сформулируйте, что же вам надо. а мы пж--баги поизучаем ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&tablet=1&tid=1995861]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
14ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 302ms |
total: | 458ms |
0 / 0 |