Re: updating a sequence

Поиск
Список
Период
Сортировка
Искать
От
Sam Gendler
Тема
Re: updating a sequence
Дата
Msg-id
8B98F15B-E050-43B6-8784-36FD3E8570B2@ideasculptor.com
Ответ на
Re: updating a sequence (Scott Marlowe)
Список
Дерево обсуждения
Re: updating a sequence Jasen Betts <jasen@xnet.co.nz>


Sent from my iPhone

On Nov 15, 2011, at 7:49 PM, Scott Marlowe  wrote:

> On Tue, Nov 15, 2011 at 8:46 PM, Scott Marlowe  wrote:
>> On Tue, Nov 15, 2011 at 5:33 PM, Samuel Gendler
>>  wrote:
>>> On Tue, Nov 15, 2011 at 4:28 PM, John Fabiani  wrote:
>>>> 
>>>> On Tuesday, November 15, 2011 08:33:54 am Richard Broersma wrote:
>>>>> On Tue, Nov 15, 2011 at 8:06 AM, John Fabiani 
>>>>> wrote:
>>>>>> alter sequence somename restart with (select max(pk) from sometable).
>>>>>> 
>>>>>> I need this for automating an ETL (using pentaho).
>>>>> 
>>>>> 
>>>>> http://www.postgresql.org/docs/9.1/interactive/functions-sequence.html#FUNC
>>>>> TIONS-SEQUENCE-TABLE
>>>> 
>>>> 
>>>> I don't see how that helps answer my problem.  I know how to update a
>>>> sequence.  I want to pass a value for the restart vaue that depends on a
>>>> query
>>>> - all in one statement.  I would think it is a common problem i.e.
>>>> migrating
>>>> data.
>>>> 
>>> 
>>> use a subquery to set the value -
>>> select setval('foo', select max(some_id) from some_table)
>>> It's all right there in the with docs that you were pointed to. We try to
>>> encourage people to be somewhat self sufficient around here.
>> 
>> You need to wrap a subselect in ():
>> 
>> select setval('foo', (select max(some_id) from some_table));
>> 
>> That works in 9.1.1.  No clue about previous versions off the top of
>> my head, but I seem to recall it doesn't work in 8.3 and prior
>> versions.
> 
> Was wrong, it definitely works in 8.3.  But only with the parens.


Yes. My version without parens was just a typo. I didn't test it before sending it
В списке pgsql-sql по дате отправления
От: Scott Marlowe
Дата:
Сообщение: Re: updating a sequence
От: Sylvain Mougenot
Дата:
FAQ