Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / инлайновые хп / 7 сообщений из 7, страница 1 из 1
26.02.2007, 12:36
    #34354626
Tertium Organum
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инлайновые хп
можно ли в самих запросах инлайново использовать конструкции plpgsql? я, конечно, понимаю, что можно создать ф-цию и выполнить ее, но это не решение
...
Рейтинг: 0 / 0
26.02.2007, 12:50
    #34354665
Tertium Organum
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инлайновые хп
то есть например в mssql можно написать:

Код: plaintext
if not exists (select a from mytable where id =  1  )  INSERT into mytable values( 1 , 1 )

как бы это в один запрос на постгре сделать?
...
Рейтинг: 0 / 0
26.02.2007, 13:31
    #34354818
KRED
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инлайновые хп
if not exists (select a from mytable where id = 1 ) INSERT into mytable values(1,1)

insert into yourtable as select 1,1 from dummy where not exists (select 1 from mytable where id = 1 )
...
Рейтинг: 0 / 0
26.02.2007, 13:40
    #34354844
Shweik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инлайновые хп
1)Нет такая помесь невозможна - только написание ХП на каком-либо из PL. Конструкция CASE в SELECT это не pl/pgsql

2) if not exists (select a from mytable where id = 1 ) INSERT into mytable values(1,1)
А почему бы это не определить условия в правиле на INSERT?
Проверки-то могут быть и посложнее select a from mytable where id = 1.
...
Рейтинг: 0 / 0
26.02.2007, 13:44
    #34354862
Andrey Daeron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инлайновые хп
В PostgreSQL нельзя использовать inline (т.е. непосредственно в тексте SQL запроса) констркуции pl/pgsql НЕЛЬЗЯ.
Т.е. нужно искать другие пути решения проблемы, например указанные KRED .
...
Рейтинг: 0 / 0
26.02.2007, 13:50
    #34354881
Tertium Organum
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инлайновые хп
2KRED: спасибо! работает, и даже без 'from dummy'.
и правилом можно, но интересовало как именно инлайново. потому что только в нескольких случаях нужна проверка

понятно, что case не plsql. и if exists тоже
...
Рейтинг: 0 / 0
26.02.2007, 15:49
    #34355294
KRED
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инлайновые хп
Tertium Organum2KRED: спасибо! работает, и даже без 'from dummy'.

ya prosto na vskidkky napisal i ne proveryal/testiroval , Rad chto "idea" tebe stala srazy ponyatna.

postgres y meny doma dlya igr a na rabote orakyli ...

tak chto "spasibo" ne zachto . ydachi.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / инлайновые хп / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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