- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen billentyűzetet vegyek?
- Megjöttek a be quiet! Pure Loop 3 sorozatú kompakt AIO-i
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- Milyen videókártyát?
- RAM topik
- Notebook hibák
- Projektor topic
- Apple MacBook
- Azonnali fotós kérdések órája
Új hozzászólás Aktív témák
-
cucka
addikt
Egy ilyen sql-el érdemes elindulni:
select events.* from events where users_id in (select friend_id from relations where users_id={$user_id}) order by dateofcreation ascAz in()-ben található lekérdezés kiszedi a $user_id-hez tartozó barátok azonosítóját (ide php-ban be kell helyettesíteni a $user_id változót. A külső lekérdezés meg egyszerűen listázza az events táblát, leszűrve a megfelelő felhasználói azonosítók szerint. Ha a barát adataira is szükség van, akkor bejoin-olod a users táblát is és kész.
A te php-s megoldásod annyi soron megy végig, amennyi a userek és a relációk számának szorzata, tehát az algoritmusod négyzetes.
Ebben az sql-es megoldásban a belső lekérdezés csak egyszer fut le és az index miatt logn időben végez, a külső lekérdezés pedig végigfut az összes soron, de egy index létrehozásával ezt szintén meg tudja oldani logn időben.
Gondolatkísérlet: tegyük fel, hogy nő az oldalad látogatottsága. Tegyük fel, hogy az eredetihez képest tízszer annyi felhasználó van, ami mondjuk húszszor annyi relációt jelent. Ez esetben:
- az én lekérdezésem nagyjából ugyanannyi idő alatt végez a kereséssel, mint előtte
- a te php-s megoldásod 200-szor () annyi műveletet fog végezni, mint előtte
Új hozzászólás Aktív témák
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! iPhone 16/iPhone 16 Plus/iPhone 16 Pro/iPhone 16 Pro Max
- ThinkPad T495 Ryzen 3 PRO 3300U 12GB 256GB 1 év garancia
- Bomba ár! Lenovo ThinkBook 14 G4 - Ryzen 7 5825U I 16GB I 256SSD I 14" FHD I Cam I W11 I Garancia!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: FOTC
Város: Budapest