Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Выборка из двух таблиц
 
 автор: danya_nyjniy   (21.06.2012 в 12:50)   письмо автору
 
 

Привет! Не могу сделать выборку из двух таблиц.

Задача заключается в том чтобы получить ID пользователей которые писали пользователю с ID5 и тех которым писал пользователь с ID5. Также уникальность ID пользователей и сортировка, чтобы пользователи с которыми ID5 последний раз переписывался или они писали ему были вверху, то есть сортировка по дате.

Есть таблица входящих сообщений «table_vxod»:

id_msg
id_user (кто отправил)
id_contact (кому отправлено)
msg
date

Таблица исходящих сообщений «table_isxod»:

id_msg
id_user (кто отправил)
id_contact (кому отправлено)
msg
date

  Ответить  
 
 автор: Sfinks   (21.06.2012 в 23:21)   письмо автору
 
   для: danya_nyjniy   (21.06.2012 в 12:50)
 

Т.е. у вас данные в БД дублируются? сообщение сохраняется и в исходящих и во входящих? А зачем? Разве одной такой таблицы не достаточно? тем более, что данные в них идентичные!

По сути вопроса так:
SELECT id, max(d) last FROM(
  SELECT id_contact id, date d FROM table_isxod WHERE id_user=5
    union all
  SELECT id_user, date FROM table_vxod WHERE id_contact=5
)T
GROUP BY id
ORDER BY last DESC 

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования