Autor | Zpráva | ||
---|---|---|---|
v4it Profil * |
#1 · Zasláno: 19. 9. 2010, 16:17:05
Dobrý den, mám výpis uživatelů, kde spojuju informace o jedněch uživatelích ze 2 zdrojů: z ldapu(pokud má daný uživatel založen emailový účet, jinak se vrací null) a z mysql(pokud mají ftp účet, jinak se vrací null). Tyto informace spojím v jednom poli a povoluji řazení podle jména uživatele, emailové adresy, ftp kvóty apod. Je možnost řadit podle více klíčů najednou. Také omezuju výpis uživatelů třeba 15 najednou. Toto hezky funguje, ale poslední dobou, co narůstá počet uživatelů, se to stává hrozně pomalým. Není čemu se divit - musí se přečíst všichni uživatelé z obou zdrojů, v poli seřadit a pak na nich nasadit limit zobrazení. Potřeboval bych poradit s vhodnějším algoritmem na zpracování dat. Logicky se naskýtá možnost získat třeba 3 uživatele už rovnou seřazené z mysql, ale to nejde z následujícího důvodu:
username | sql/email | ldap/kvota ----------------------------------------- usr1 | e@email.com | 500 usr2 | d@email.com | 500 usr3 | c@email.com | 500 usr4 | b@email.com | 500 usr5 | a@email.com | 500 Teď se rozhodnu seřadit je podle kvóty a pak podle emalu, tzn. ldap vrátí první 3, ty pak se ty tři seřadí jako c@..., d@..., e@... Správně by ale měl výpis vypadat takto: usr5 | a@email.com | 500 usr4 | b@email.com | 500 usr3 | c@email.com | 500 Doufám v nějakou dobrou duši, která mi s tím pomůže :-) |
||
Keeehi Profil |
#2 · Zasláno: 19. 9. 2010, 17:54:23 · Upravil/a: Keeehi
v4it:
Moc vám nerozumím, ale mysql umí řadit podle více sloupců ORDER BY sloupec1, sloupec2, sloupec3, .. - Řadí se podle sloupce 1, pokud budou ve sloupci 1 více stejných položek, seřadí se podle sloupce2, atd..
|
||
Časová prodleva: 14 let
|
0