Súgó - Keresés - Tagok - Naptár
Teljes változat: Sorok sorba rendezése
PC WORLD Segélyvonal > WEBSAROK > Webszerkesztés, programozás > Adatbázisok
Mezofi
Sziasztok!
Rá lehet-e vanni a mysql-t, hogy rendezze a sorokat a kulcs oszlop szerint emelkedő sorrendbe? De ne csak ideiglenesen amíg megnézem és utána újra marad a régi sorrend, hanem véglegesen.
A kulcs az id oszlop, és például a 3-as után 82 es jön stb.
arpsoft
Ezzel egyetlen select-et spórolnál meg.
Az 5.0-ás MySQL-ben már vannak view-k. Ezekkel is meg tudod oldani, bár ez lényegében egy tárolt, folyamatosan frissített eredményű select.

Ha fizikailag is sorba akarod rendezni a tábládat, akkor egyszerűbb lekérdezni egy selecttel egy másik táblába.

De nem igazán látom értelmét, mivel a szekvenciális elérés nem sokkal gyorsabb az indexelt elérésnél.
Mezofi
Ha jól tudom, meg lehet adni lekérdezéskor, hogy a kiíratás mondjuk emelkedő sorrendben történjen.
Mivel kell kiegészíteni a lekérdezést.
Mondjuk:

$query_login = "SELECT * FROM tabla WHERE kod='feltétel' '";
Úgy szeretném ha a $query_login-ban a sorok id szerint lennének emelkedő sorrendben.
ani_wink.gif
Ajnász
Ha jól sejtem az ORDER BY-ra gondolsz.
Mezofi
Igen, ez így jól működik :
$result=mysql_query( "SELECT * FROM termek WHERE kind='$name' ORDER BY id ASC");

Sorrendben olvassa be az id értékeket.
ocsi
Ha már itt tartunk, nem tudjátok minek a rövidítése a ASC és a DESC ??? Csak kiváncsiságból..tongue.gif
Mezofi
Az ASC növekvő, a DESC csökkenő sorrendet jelent., mire utána néztem, google már megelözőtt.
google
Desc - descending order, azaz sorbarendezés csökkenő irányban.
Asc pedig az ascending, azaz a növekvő (alapértelmezett)

u.i.: Ja, most poént lőttem le? biggrin.gif Akkor bocs. ani_wink.gif
Biszke
Sziasztok!

Egy kis sorbarendezési problémám lenne.
Szeretnék sorbarendezést, de több felétel alapján. Pl. azt szeretném, hogy készüljön egy lista úgy, hogy először a 'csikos'-akat rendezi sorba méret szerint, utána a 'kockas'-akat és végül a 'sima'-kat.
Több feltételt lehet megadni WHERE-feltételnek?

Itt a tábla:
IPB kép

Előre is köszi. smile.gif
Mezofi
@Biszke

Ha jól látom akkor ABC sorrendben pont így fogja elrendezni.
KÓD
$eredmeny=mysql_query("SELECT * FROM tabla_nev ORDER BY minta, meret ");

Lehet WHERE után sok mindet megadni.
Biszke
Köszi.
Kiskalóz
Ez majdnem jó! smile.gif
Annyit még tudunk csavarni a dolgon, hogy az ABC sorrendben lévő minta-kal is meret szerint sorba rendezze? Nekem most úgy csinálja, hogy ha a minta, meret sorrendben írom, akkor a minta szerint ABC sorrendbe rakja de az egyes minták nincsenek mére szerint sorba rendezva. Ha pedig meret, minta sorrendben írom, akkor meret szerint sorbarendeződnek, de az ABC sorrend nem stimmel.

Én egészen konkrétan így szeretném:
csikos 2
csikos 6
kockas 3
sima 1
sima 4
sima 5



arpsoft
A fenti Select ezt az eredményt adja.
Kiskalóz
Igaz..

Csak elírtam vmit.

Köszönöm a segítséget smile.gif
Ez a tartalom egy lebutítottváltozata. A teljes változat képekkel kiegészült megtekintéséhez kérünk, kattints ide.