Чтобы соединить запись одной таблицы с первой из нескольких записей другой таблицы как сделать?
Ищу правильный способ соединения двух таблиц, между которыми есть связующее поле. Но проблема в том. что связь один ко многим.
table1_id - нужно, к примеру id, name этой таблицы соединить с
table2 , у которой есть поле table1_id и поле price.
И вот мне надо получить выборку чтоб было table1.id, table1.name, table2.price но так, чтобы соединилась таблица1 только с той записью, У которых поле price максимально. Каким путем правильно идти?
Я только вижу использование left join (select table1_id, price from table2 order by price desc limit 1)
Но мен смущает правильный ли это способ? то есть я за счет сортировки по полю price и ограничению по количеству записей выборки получаю только одну запись. которую можно соединить с table1
FanatPHP, в этом случае мы получим мы получим price той записи, где он является, к примеру максимальным. Но если нам нужно еще получить id той записи или валюту, то мы этого не сможем сделать ((
вы имели ввиду что то типа
select a, b, (select max(price) from table2 where table1_id = table1.id) as price from table1;
а мне бы хотелось еще и другие поля подтянуть некоторые но только из той записи, где price максимально