powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / select join с обновлением колонки первой таблицы
8 сообщений из 8, страница 1 из 1
select join с обновлением колонки первой таблицы
    #39266953
HappyMan1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Подскажите пожалуйста, как сделать одним запросом выборку?
Есть таблица1
Код: plaintext
1.
2.
3.
4.
 column1 | column2
---------+---------
       1 |     abv
       2 |       
       3 |     tyu

И таблица2
Код: plaintext
1.
2.
3.
 column1 | column2 | column5
---------+---------+--------
       2 |      fgh|   pof
       3 |      eee|   kkk

column1 - ключивые индексы по котором искать соответствие
column2 - в таблица2 приоритетные значение

Нужно получить:
Код: plaintext
1.
2.
3.
4.
 column1 | column2 | column5
---------+---------+--------
       1 |      abv|       
       2 |      fgh|   pof
       3 |      eee|   kkk

Условия:
1. Нужно вывести все строки из таблицы 1;
2. Таблица2 всегда меньше чем первая.

p.s. если вопрос элементарный, прошу пнуть в нужный мануал. Спасибо.
...
Рейтинг: 0 / 0
select join с обновлением колонки первой таблицы
    #39266968
Lonepsycho
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
select join с обновлением колонки первой таблицы
    #39266976
HappyMan1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Lonepsycho, вопрос как заменить значение.
По ссылке я могу сделать таблицу вида:
Код: plaintext
1.
2.
3.
4.
 column1 | column2 | column2_2 | column5
---------+---------+-----------+--------
       1 |      abv|           |  
       2 |         |   fgh     |   pof
       3 |      tyu|   eee     |   kkk

Вопрос в том, как объединить колонки column2 и column2_2, c приоритетом в column2_2 и получить:
Код: plaintext
1.
2.
3.
4.
 column1 | column2 | column5
---------+---------+--------
       1 |      abv|       
       2 |      fgh|   pof
       3 |      eee|   kkk
...
Рейтинг: 0 / 0
select join с обновлением колонки первой таблицы
    #39266988
Lonepsycho
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HappyMan1982,

COALESCE
...
Рейтинг: 0 / 0
select join с обновлением колонки первой таблицы
    #39266995
HappyMan1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Lonepsycho, пробовал эту функцию, она не работает для варианта:
Код: plaintext
1.
2.
 column1 | column2 | column2_2 | column5
---------+---------+-----------+--------
       3 |      tyu|   eee     |   kkk

Итог при применении этой функции такой:
Код: plaintext
1.
2.
 column1 | column2 | column5
---------+---------+--------
       3 |      tyu|   kkk

А требуется
Код: plaintext
1.
2.
 column1 | column2 | column5
---------+---------+--------
       3 |      eee|   kkk


Есть мысль сложного запроса, который проверит наличие во второй таблице значения отличного от NULL, тогда в первой выставить NULL и после этого COALESCE будет работать верно. Только как-то это очень громоздко будет...
...
Рейтинг: 0 / 0
select join с обновлением колонки первой таблицы
    #39267006
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HappyMan1982Lonepsycho, пробовал эту функцию, она не работает для варианта:
Код: plaintext
1.
2.
 column1 | column2 | column2_2 | column5
---------+---------+-----------+--------
       3 |      tyu|   eee     |   kkk

Итог при применении этой функции такой:
Код: plaintext
1.
2.
 column1 | column2 | column5
---------+---------+--------
       3 |      tyu|   kkk

А требуется
Код: plaintext
1.
2.
 column1 | column2 | column5
---------+---------+--------
       3 |      eee|   kkk


Есть мысль сложного запроса, который проверит наличие во второй таблице значения отличного от NULL, тогда в первой выставить NULL и после этого COALESCE будет работать верно. Только как-то это очень громоздко будет...

А головой подумать про отличие colesce(column2, column2_2) от colesce(column2_2, column2) ?
...
Рейтинг: 0 / 0
select join с обновлением колонки первой таблицы
    #39267007
HappyMan1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Lonepsycho, в выходные, да ещё при грозе голова отказывается думать.

Большое спасибо, завтра попробую.
...
Рейтинг: 0 / 0
select join с обновлением колонки первой таблицы
    #39267013
HappyMan1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Т.е. Maxim Boguk спасибо )
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / select join с обновлением колонки первой таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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