Kezdőoldal » Számítástechnika » Weblapkészítés » Hogyan kell egy SQL rekord...

Hogyan kell egy SQL rekord sorszámát kiszámitani?

Figyelt kérdés

A helyzet az hogy van egy sql táblám.Vannak benne rekordok.Meg kéne állapítsam pl egy bármeik xy rekorda hogy az hanyadik a táblában de id alapján nemtom mert össze van kuszálva.Tehát ha pl van egy ien tábla hogy:


1.rekord

2.rekord

3.rekord


és én a 2. rekord számát akarom az ugye a 2 lesz.Ezt hogy tudnám megnézni vagy vvmi fügvénnyel kiszámitani?


2011. okt. 7. 20:55
 1/5 anonim ***** válasza:

Ennek a feladatnak nincs értelme. Az adatbázisok esetében sem az attribútumok (azaz az oszlopok), sem a rekordok (azaz a sorok) sorrendjének nincs jelentősége. Összekeverheted az oszlopokat, felcserélheted a sorokat, de az attól még pontosan ugyan az az adatbázis marad. Így arról sincs értelme beszélni, hogy melyik rekord a tizennyolcadik.


(Többféle elméleti megközelítés létezik, a Műegyetemen azt tanítják, amit itt leírtam. De a rekordok sorrendjét tudtommal más elméletek sem tekintik adatnak.)

2011. okt. 7. 22:46
Hasznos számodra ez a válasz?
 2/5 KeryAti ***** válasza:

Én azt tudom tanácsolni, hogy minden sornak adj egy azonosítót (ID) ami 1 szám lesz "auto_increment"-el hogy minden felküldött adatnak legyen egy külön értéke:

ID: 1

Tartalom: Asdasd

----

ID: 2

Tartalom: 321321

----

ID: 3

Tartalom: xyzxyz


Így lekérésnél az ID-t keresed ki és onnantól már csak annak az adatait iratod ki. :)


Pl.:


$user = mysql_query("SELECT * FROM users WHERE ID = '2'");


így a 2-es ID-vel ellátott sornak az adatait fogja kezelni.


$name = $user['Name'];


Ezzel a 2-es ID-vel ellátott sorból kiveszem a Name oszlop értékét.


Próbálkozz ezzel, sok sikert.

Remélem segítettem.


K.A.

2011. okt. 7. 23:07
Hasznos számodra ez a válasz?
 3/5 anonim ***** válasza:
A sorrendnek csak akkor van értelme, ha már az adatokat valami alapján rendezted (ORDER BY). A sorba rendezés után, pedig elég egy tömbben eltárolnod az táblából lekért adatokat, így könnyen megállapítható, melyik lekért adat hanyadik a sorban (A tömb 1. eleme alapesetben a 0. sorszámú elem).
2011. okt. 8. 00:18
Hasznos számodra ez a válasz?
 4/5 anonim ***** válasza:

Mégy egy kis kiegészítés.

Az ID auto increment nem jó megoldás, mert ha törölsz a táblából akár egy rekordot is, akkor már, nem azt fogja mutatni, hogy az adott rekord hanyadik a sorban.

2011. okt. 8. 00:20
Hasznos számodra ez a válasz?
 5/5 anonim ***** válasza:

Több lehetőséged is van.


1)

Rendezed az alapján ami alapján rendezned kell (pl primary key), majd lekérdezed, hogy hány ennél kisebb key-el rendelkező elem van a táblában. Ha megkapod, hogy mondjuk 10 akkor tudod, hogy éppen a 11. elemet vizsgálod.


2)

Azt is megteheted, hogy lekérdezed, hogy összesen hány sor van. Ha tudod, hogy egy oldalon mondjuk 5öt listázol ki és a 3. oldal 2. elemét írod ki éppen akkor az a 17. elem.


3)

Létrehozol a mysql-ben egy változót:

SET @sorszama=0;

SELECT @sorszama:=@sorszama+1 as sor

Ekkor listázáskor mindne sor kiírásánál visszakapod, hogy hanyadik sort is listázod épp.

2011. okt. 8. 10:11
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!