Mezofi
2005. május 19. 14:17
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
2005. május 20. 8:56
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
2005. május 20. 15:55
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.
Ajnász
2005. május 20. 16:10
Ha jól sejtem az
ORDER BY-ra gondolsz.
Mezofi
2005. május 20. 17:44
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
2005. május 28. 19:11
Ha már itt tartunk, nem tudjátok minek a rövidítése a ASC és a DESC ??? Csak kiváncsiságból..
Mezofi
2005. május 28. 19:58
Az ASC növekvő, a DESC csökkenő sorrendet jelent., mire utána néztem, google már megelözőtt.
google
2005. május 28. 20:01
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?

Akkor bocs.
Biszke
2006. július 31. 12:08
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:

Előre is köszi.
Mezofi
2006. július 31. 12:20
@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
2006. július 31. 15:13
Köszi.
Kiskalóz
2006. augusztus 1. 18:15
Ez majdnem jó!

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
2006. augusztus 2. 8:13
A fenti Select ezt az eredményt adja.
Kiskalóz
2006. augusztus 2. 14:14
Igaz..
Csak elírtam vmit.
Köszönöm a segítséget
Ez a tartalom egy lebutítottváltozata. A teljes változat képekkel kiegészült megtekintéséhez kérünk,
kattints ide.