Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: SELECT запрос из связанных таблиц

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Dezmont
Отправлено: 14 Июня, 2012 - 16:16:16
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Июль 2010  


Помог: 1 раз(а)




Добрый день, помогите пожалуйста с запросом, а то никак не могу додуматься.
Таблица request:
id | name | etc
-------------------
1 | One | ....
2 | Two | ....
3 | Three | ...
Таблица link- связь для 2-х таблиц. 2-я таблица не имеет значения
id | request.id | load_address.id | date
-------------------------------- --------------
1 | 1 | 1 | 2012-05-02
2 | 1 | 2 | 2012-05-01
3 | 3 | 4 | 2012-01-01

Мне нужно сделать выборку всех полей из таблицы request и MAX(link.date) из таблицы link, для каждого id в таблице request.
В итоге должно получиться:
id | name | etc | MAX(date)
-------------------
1 | One | .... | 2012-05-02
2 | Two | .... | NULL
3 | Three | ... | 2012-01-01

З.Ы. Из 2-ой таблицы выборка делается простым запросом: SELECT MAX(unload_time) FROM link GROUP BY request_id.
В голове вертится объединение с подзапросом, но чёт додумать не могу. Подскажите, если не сложно.(
 
 Top
EuGen Администратор
Отправлено: 14 Июня, 2012 - 16:23:45
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Хм. Если я корректно понял, то
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT request.*, maxs.max_date FROM (SELECT MAX(unload_time) AS max_date, request_id FROM link GROUP BY request_id) AS maxs LEFT JOIN request ON maxs.request_id=request.id


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Dezmont
Отправлено: 14 Июня, 2012 - 22:59:55
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Июль 2010  


Помог: 1 раз(а)




EuGen, спасибо. То что нужно.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB