- Lassan felnő a Huawei a kínai AI igényekhez
- TCL LCD és LED TV-k
- Videós, mozgóképes topik
- Milyen házat vegyek?
- Idén lesz tíz éves az AMD Socket AM4 foglalat
- Milyen SSD-t vegyek?
- Apple MacBook
- 3D nyomtatás
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- Vezeték nélküli fejhallgatók
Új hozzászólás Aktív témák
-
InfiniteReality
őstag
válasz
InfiniteReality
#1042
üzenetére
Megoldottam úgy, hogy csak racionalizáltam a mezőket és minden mezőhöz megfelelőbb adattípust választottam, mint ami eddig volt (ezzel 1 mb-tal kevesebb lett a tábla mérete), illetve az olyan mezőkről amikre nem irányul sok lekérdezés illetőleg kevésbé befolyásolják a végeredményt, levettem az indexet (eddig minden mezőn volt index, ami miatt a beírás volt lassabb).
Lényeg, hogy végül hagytam az egész táblát egyben, nem csaptam szét évekre, mert a lekérdezés több erőforrást igényelt volna ha sikerül rendesen megírni, mint az, hogy a tábla egyben van. Olyan 162 ezer sora van jelenleg az érintett táblának. -
InfiniteReality
őstag
válasz
PazsitZ
#1053
üzenetére
Biztos csak elírás annak a részéről, aki ezt leírta. Vagy régi php/mysql verzióra vonatkozik (nálam mindkettőből 5-ös van).
Szinten mindenhol lecseréltem a num_rows-t affected_rows-ra és működik.Ez működik:
SELECT jatekos, sum(pont) FROM jateklista WHERE pont >='1' GROUP BY jatekosl ORDER BY 2 LIMIT 50Utána egy if mysql_affected_rows() > 0 van annak eldöntésére vannak-e eredmények vagy sem. Ezzel a paranccsal (és egyben lévő adatbázissal) bemegy abba az ágba, ahol ki kell írni az eredményeket.
(SELECT jatekos, sum(pont) FROM jateklista2005 WHERE pont >= '1' GROUP BY jatekosl) UNION (SELECT jatekos, sum(pont) FROM jateklista2006 WHERE pont >= '1' GROUP BY jatekosl) ORDER BY 2 DESC LIMIT 50
Ez az évekre szétdarabol adatbázisra készült és működik, de nem a várt eredményt hozza, nem azt amire szükségem lenne.
-
InfiniteReality
őstag
válasz
PazsitZ
#1051
üzenetére
Kell vagy nem, egy if (mysql_affected_rows() >0) paranccsal le van kezelve, hogy van-e a lekérdezésnek eredménye. Az első hozzászólásomban lévő mindkét lekérdezésnek van eredménye, az egyik jó, a másik hibás. Amiket beirtatok azoknak pedig nincs eredménye, de hibát sem okoznak...
-
InfiniteReality
őstag
válasz
ArchElf
#1046
üzenetére
Ennyire nem vágom mélyen a MySQL-t, esetleg leírnád hogyan állítsam össze a lekérdezést? Temp táblát nem szeretnék ehhez használni...
Ha ennyire nehéz az évekre bontott táblákból megoldani ezt a fajta lekérdezést, akkor hagyom egyben, de már 428ezer sort tartalmaz az adatbázisnak ez a táblája, s gondoltam az egyes évekre irányuló lekérdezések valamint az új beírások az aktuális évbe gyorsabbak lesznek, ha szétcsapom az egészet évekre... -
InfiniteReality
őstag
válasz
ArchElf
#1041
üzenetére
Kérdés, adott egy adatbázis, amit szétdobtam az egyik mező adatai alapján évek szerint külön táblákba (tehát minden év összes bejegyzése külön táblában van már).
Amikor az egész egyben volt, akkor az alábbi lekérdezés hibátlanul működött (a jatekosl mező tartalma ugyanaz mint a jatekos mezőé, de kisbetűsítve):
SELECT jatekos, sum(pont) FROM jateklista WHERE pont >='1' GROUP BY jatekosl ORDER BY 2 LIMIT 50
Az évek szerint szétdobott táblák esetén a következő lekérdezést alkalmaztam, hogy a fenti eredményt elérjem (csak 2 évet írok le, mivel a teljes időszak lekérdezését PHPban állítom elő dinamikusan, a hiba úgyis ugyanaz):
(SELECT jatekos, sum(pont) FROM jateklista2005 WHERE pont >= '1' GROUP BY jatekosl) UNION (SELECT jatekos, sum(pont) FROM jateklista2006 WHERE pont >= '1' GROUP BY jatekosl) ORDER BY 2 DESC LIMIT 50
A hiba pedig az, hogy minden játékos annyiszor szerepel, ahány évben beleesik a fenti lekérdezésbe. Nyilván valami alap dolgot rontok el, de remélem tudtok segíteni
Esetleg ha valakinek van "szebb" megoldása, megköszönöm. 
Új hozzászólás Aktív témák
Hirdetés
- Milyen okostelefont vegyek?
- Szeged és környéke adok-veszek-beszélgetek
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Redmi 15A néven érkezett a Poco C85x újracsomagolt változata
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Fotók, videók mobillal
- Motoros topic
- Gyúrósok ide!
- Lassan felnő a Huawei a kínai AI igényekhez
- MWC 2026: Bajnoki címre pályázik a Xiaomi Watch 5
- További aktív témák...
- ASUS TUF A14 (2024) Ryzen AI 9 370HX / RTX 4060 / 32GB / 1TB / dobozos, megkímélt
- XPS 9530 15.6" FHD+ IPS i7-13700H RTX 4050 16GB 512GB NVMe ujjlolv IR kam gar
- Asus Zenbook 14-OLED-,2.8K - Ultra 7 155H,16GB/1TB SSD-Garancia!
- Dell Latitude 5490 14", HD,i5-8350U,8GB,256GB SSD,WIN11
- iPhone 13 Mini 128GB éjfekete
- Új! Razer Iskur V2 - Black gamer szék!
- ÁRGARANCIA!Épített KomPhone i5 14600KF 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Panasonic CF-XZ6 AIO all-in-one laptop tablet 2k touch i5-7300u speciális ütésálló rugged
- Apple iPhone 16 Pro Max 256GB Black Titanium használt, karcos kijelző 91% akku - 6 hó garancia
- BESZÁMÍTÁS! 64GB Kingston Fury Renegade 2666Mhz DDR4 memória garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Esetleg ha valakinek van "szebb" megoldása, megköszönöm. 

