powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как сделать IF в psql чтобы оно проверило на NULL ?
6 сообщений из 6, страница 1 из 1
Как сделать IF в psql чтобы оно проверило на NULL ?
    #39448095
sql_user2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НИ один из способов н еработает:

Код: sql
1.
2.
3.
[FIXED]IF my_var IS NULL THEN UPDATE ...; END IF;
IF (my_var IS NULL)  THEN UPDATE ...; END IF;
IF ((my_var IS NULL) IS TRUE) THEN UPDATE ...; END IF;[/FIXED]
...
Рейтинг: 0 / 0
Как сделать IF в psql чтобы оно проверило на NULL ?
    #39448096
sql_user2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смысл такой:


Надо проверить переменную, в теле функции.

Если она NULL сделать UPDATE.





Условие IF с проверкой на NULL не могу понять как сделать
...
Рейтинг: 0 / 0
Как сделать IF в psql чтобы оно проверило на NULL ?
    #39448111
big-trot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sql_user2,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DO
$$
DECLARE
	my_var integer;
BEGIN
	IF my_var IS NULL  THEN 
    	       RAISE NOTICE 'yes';
	END IF;
END
$$
...
Рейтинг: 0 / 0
Как сделать IF в psql чтобы оно проверило на NULL ?
    #39448117
sql_user2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
big-trotsql_user2,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DO
$$
DECLARE
	my_var integer;
BEGIN
	IF my_var IS NULL  THEN 
    	       RAISE NOTICE 'yes';
	END IF;
END
$$





********** Ошибка **********

ERROR: syntax error at or near "DO"
SQL state: 42601
Характеристика:1
...
Рейтинг: 0 / 0
Как сделать IF в psql чтобы оно проверило на NULL ?
    #39448122
sql_user2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Короче, сделал вот так:


IF COALESCE(my_var, 0::int)=0 THEN


на сколько это правильно - не знаю
...
Рейтинг: 0 / 0
Как сделать IF в psql чтобы оно проверило на NULL ?
    #39448145
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sql_user2,

что, до 9.2 не добрались ?
https://www.postgresql.org/docs/current/static/sql-do.html

тогда так попробуйте:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
BEGIN;
create OR REPLACE function pg_temp.test()
RETURNS void
AS
$f$
DECLARE
	my_var integer;
BEGIN
	IF my_var IS NULL  THEN 
		RAISE NOTICE 'yes';
	else 
		RAISE NOTICE 'else';
	END IF;
END
$f$ language plpgsql;
SELECT pg_temp.test();
ROLLBACK;
----------------------------------
ЗАМЕЧАНИЕ:  yes
результат запроса (1 строка) отброшен.



Query returned successfully with no result in 13 msec.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как сделать IF в psql чтобы оно проверило на NULL ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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