Hirdetés
- Kapható a strapamobil, aminek kikapcsolása nélkül lehet kicserélni az aksiját
- Milyen okostelefont vegyek?
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Google Pixel topik
- Bemutatkozott a Poco X7 és X7 Pro
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Poco F7 – bajnokesélyes
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Samsung Galaxy A56 - megbízható középszerűség
- Honor Magic6 Pro - kör közepén számok
Ú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
- Windows 11
- Kapható a strapamobil, aminek kikapcsolása nélkül lehet kicserélni az aksiját
- Milyen okostelefont vegyek?
- BestBuy topik
- A fociról könnyedén, egy baráti társaságban
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Magga: PLEX: multimédia az egész lakásban
- ASUS routerek
- OLED TV topic
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- További aktív témák...
- SNES Edge Sharpener (Enhancer) modkit
- ÚJ GIGABYTE A16 3VH - 16" WUXGA 165Hz - Ryzen 7 260 - 16GB - 1TB - Win11 - RTX 5060 - 3 év garancia
- Dell Latitude FHD IPS Intel core i5-1345u 16GB DDR4 256gb SSD WIN11
- Surface STUDIO AIO PC 28col 4k TOUCH / Intel i7 /32gb ram / 512NvMe + 1TB / NVIDIA 4gb dedikált
- Asztali Gamer Gép Garanciális Ryzen 7-7800x3d 4070 Super
- HIBÁTLAN iPhone 14 256GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3535
- iPhone 13 mini 128GB Green -1 ÉV GARANCIA -Kártyafüggetlen, MS3896, 95% Akkumulátor
- HIBÁTLAN iPhone 13 mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3286, 100% Akksi
- Bomba ár! Lenovo X1 Yoga 1st - i7-6G I 8GB I 256SSD I 14" WQHD Sérült I HDMI I W10 I CAM I Garancia
- Death Stranding Director s Cut
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
) annyi műveletet fog végezni, mint előtte

