Форум: "Начинающим";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.052 c