Изкарване от mysql само уникалните записи

Pussycat

Registered
Здравейте на всички :)

Ето и какво представляват записите в табличката:

id ime
1 web-tourist
2 google
3 web-tourist
4 yahoo
5 google
6 abv
7 photoshop-bg

и т.н.

Искам да изкарам последните (а не въобще от цялата таблица) 5 УНИКАЛНИ записа.
Ползвам distinct, но не ме удоволетворява ..

В конкретния случай ще изкара само: yahoo, abv и photoshop-bg
А аз искам: web-tourist, google, yahoo, abv, photoshop-bg

Благодаря ! :)
 
Код:
 SELECT DISTINCT(poleto) FROM table ORDER BY id DESC LIMIT 5

Код:
SELECT * FROM table GROUP BY poleto ORDER BY id DESC LIMIT 5
 
Е да, ама нещо неще..
изкарва пак уникалните от ЦЯЛАТА ТАБЛИЦА, а аз искам да изкара само последните уникални.

Тоест нали имаме:

id ime
1 web-tourist
2 google
3 web-tourist
4 yahoo
5 google
6 abv
7 photoshop-bg

искам да изкара
web-tourist google yahoo abv photoshop-bg

така както казвате, изкарва само:
yahoo, abv, photoshop

Тоест изкарва УНИКАЛНИТЕ ЗАПИСИ ОТ ЦЯЛАТА ТАБЛИЦА, а не от обхвата 5 записа.
 
Pussycat каза:
Е да, ама нещо неще..
изкарва пак уникалните от ЦЯЛАТА ТАБЛИЦА, а аз искам да изкара само последните уникални.

Тоест нали имаме:

id ime
1 web-tourist
2 google
3 web-tourist
4 yahoo
5 google
6 abv
7 photoshop-bg

искам да изкара
web-tourist google yahoo abv photoshop-bg

така както казвате, изкарва само:
yahoo, abv, photoshop

Тоест изкарва УНИКАЛНИТЕ ЗАПИСИ ОТ ЦЯЛАТА ТАБЛИЦА, а не от обхвата 5 записа.

Ми сложи един LIMIT 5 накрая, какъв е проблема
 
StormBreaker каза:
Pussycat каза:
Е да, ама нещо неще..
изкарва пак уникалните от ЦЯЛАТА ТАБЛИЦА, а аз искам да изкара само последните уникални.

Тоест нали имаме:

id ime
1 web-tourist
2 google
3 web-tourist
4 yahoo
5 google
6 abv
7 photoshop-bg

искам да изкара
web-tourist google yahoo abv photoshop-bg

така както казвате, изкарва само:
yahoo, abv, photoshop

Тоест изкарва УНИКАЛНИТЕ ЗАПИСИ ОТ ЦЯЛАТА ТАБЛИЦА, а не от обхвата 5 записа.

Ми сложи един LIMIT 5 накрая, какъв е проблема

Нее нее.. несхващате нещо.

Аз че съм сложил лимит 5 - сложил съм.
То е да изкара само 5 записа, а не да изкара уникалните записи само от тези 5 записа, а не от цялата таблица.. както прави group by и distinct.
 
Сложи едно допълнително поле в таблицата timestamp задай му атрибут "now" и при извикването сложи да ги подрежда по него в намаляващ ред с лимит 5.
 
error каза:
Код:
SELECT DISTINCT ime FROM (SELECT ime FROM table LIMIT 5) AS v
Така ?

Това е решението за мен.
Благодаря както на теб, така и на останалите отзовали се ! :?:
 

Back
Горе