При соединении таблиц через join получается множество строк с повторяющимися именами

yeaahhh

Старатель
Регистрация
8 Май 2008
Сообщения
278
Реакции
11
Есть две таблицы..

Таблица 1) (users:(
+---+-------+---
| id | name | age
+---+-------+---
| 1 | Вася | 20
+---+-------+-+
| 2 | Петя | 23
+---+-------+---
| 3 | Маша | 35
+---+-------+--
| 4 | Таня | 31
+---+-------+---
| 5 | Ваня | 37
+---+-------+--

Таблица 2) (dates:(
+---+-------+-------------+
| id_us | name_us | date |
+---+-------+-------------+
| 1 | Вася | 29 мая |
+---+-------+-------------+
| 1 | Вася | 30 мая |
+---+-------+-------------+
| 1 | Вася | 1 июня |
+---+-------+-------------+
| 2 | Петя | 5 июля |
+---+-------+-------------+
| 2 | Петя | 7 июля |
+---+-------+-------------+

нужно, чтобы получилось следующее..

+-------+--------------------
| name | date | age
+-------+-------------------
| Вася | 1 июня| 20
+-------+-+--------------------
| Петя | 7 июня| 23
+-------+----------------------
| Маша | - | 35
+-------+-----------------------
| Таня | - | 31
+-------+---------------------
| Ваня | - | 37
+-------+---------------

==================================

при соединении таблиц через join получается множество строк с повторяющимися именами..
Вася 29 мая
Вася 30 мая
Вася 1 июня
Петя 5 июля
Петя 7 июля
Маша -
Таня -
Ваня -

Помогите, пожалуйста..
 
Последнее редактирование:
После джойна сделай
PHP:
group by `name`
 
После джойна сделай
PHP:
group by `name`
ну и Max(Date)
+ непонятно зачем джоин, если в таблице dates дублируются имена

можно так
Код:
SELECT name_us, MAX(date) from Таблица2
GROUP BY name_us
ORDER BY name_us
единственное почему - это чтоб получить пустые дати для несуществующих записей во второй таблице. в таком случае запрос будет другой и с джоином
 
Назад
Сверху