Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.14;
Скачать: CL | DM;

Вниз

PHP и MySQL   Найти похожие ветки 

 
SerJaNT ©   (2007-09-18 04:11) [0]

Есть таблица:

Id  |  f_name  |  s_name  |  u_active
--------------------------------------
1     Alex        ssaa        yes
2     Pupkin      eqfas       yes
3     Alex        awdwc       yes
4     Green       sdvsdvs     no

Помогите составить запрос чтобы выбрать уникальные записи т.е. если записей с одинаковым значением поля f_name больше одного, то взять последнее по Id. Но чтобы остальные поля s_name, u_active были доступны.


 
Slym ©   (2007-09-18 05:47) [1]

SerJaNT ©   (18.09.07 4:11)
по порядку (MSAccess)
1. выдираешь Id соглавно условиям
SELECT Max(Таблица1.id) AS [Max-id]
FROM Таблица1
GROUP BY Таблица1.Name;
2. Дальше join"иш с остальными полями
Select * from Таблица1
INNER JOIN (
SELECT Max(Таблица1.id) AS [MaxID]
FROM Таблица1
GROUP BY Таблица1.Name) as Таблица1_1 ON Таблица1.id = Таблица1_1.MaxID;


 
SerJaNT ©   (2007-09-18 05:51) [2]

Ага, попробую так, спасибо.


 
Vrangel   (2007-09-18 10:54) [3]

SELECT `t1`.* FROM `table` `t1` LEFT JOIN `table` `t2` ON `t1`.`f_name`=`t2`.`f_name` AND `t1`.`id`>`t2`.`id` WHERE `t2`.`id` IS NULL

по идее желательно поле f_name проиндексировать



Страницы: 1 вся ветка

Текущий архив: 2007.10.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
3-1181047173
Альф
2007-06-05 16:39
2007.10.14
Прерывание выполнения SELECT


15-1190039441
Azize
2007-09-17 18:30
2007.10.14
Задача на сообразительность


2-1190130186
Евгений Р.
2007-09-18 19:43
2007.10.14
Заштриховать область


15-1190081676
Slider007
2007-09-18 06:14
2007.10.14
С днем рождения ! 18 сентября 2007 вторник


1-1185882922
oxffff
2007-07-31 15:55
2007.10.14
Статический вызов виртуального метода.