Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / подскажите как из join таблицы выбрать всего одно значение для текущей таблицы / 5 сообщений из 5, страница 1 из 1
23.10.2015, 14:05
    #39084743
Legushka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как из join таблицы выбрать всего одно значение для текущей таблицы
уже использовал но не могу найти
есть некий
Код: sql
1.
2.
select * from tab1
inner join tab2 on tab1.tab2_id=tab2.pole_id



беда в том что из таблицы tab2 надо выбрать только одну запись, даже если их много будет
как можно отрезать лишнии? забыл этот синтаксис
...
Рейтинг: 0 / 0
23.10.2015, 14:06
    #39084747
Legushka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как из join таблицы выбрать всего одно значение для текущей таблицы
забыл дописать что
для каждого случая из таблицы 1 выбрать по одной первой строке из таблицы 2 с условием некой сортировки в таблице 2
...
Рейтинг: 0 / 0
23.10.2015, 14:27
    #39084813
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как из join таблицы выбрать всего одно значение для текущей таблицы
Legushka,

distinct ON
group by
оконные функции (row_number, к примеру)
скалярный подзапрос с LIMIT-ом
еще пара-тройка разных способов
...
Рейтинг: 0 / 0
23.10.2015, 14:50
    #39084870
qwwq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как из join таблицы выбрать всего одно значение для текущей таблицы
Legushkaуже использовал но не могу найти
есть некий
Код: sql
1.
2.
3.
select * from tab1
/*inner join*/
,LATERAL (SELECT * FROM  tab2 /*on*/ WHERE tab1.tab2_id=tab2.pole_id ORDER BY .... LIMIT 1) AS tab2



беда в том что из таблицы tab2 надо выбрать только одну запись, даже если их много будет
как можно отрезать лишнии? забыл этот синтаксис

-- если версия от 9.3.


до того -- бубен -- "скалярным подзапросом" -- сиречь коррелятом
с последующим кастом и разворачиванием
Код: sql
1.
2.
3.
select * 
,((SELECT (tab2.*)::text FROM  tab2 /*on*/ WHERE tab1.tab2_id=tab2.pole_id ORDER BY .... LIMIT 1)::tab2).*
from tab1


либо сразу набором коррелятов по каждому полю.
...
Рейтинг: 0 / 0
23.10.2015, 15:11
    #39084934
Legushka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
подскажите как из join таблицы выбрать всего одно значение для текущей таблицы
qwwq,
спасибо искал LATERAL-)
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / подскажите как из join таблицы выбрать всего одно значение для текущей таблицы / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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