- Szünetmentes tápegységek (UPS)
- AMD Navi Radeon™ RX 7xxx sorozat
- Hisense LCD és LED TV-k
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Véleményes teszt bizonygatja mennyit ér a Macbook Neo 8 GB RAM-ja
- OLED TV topic
- Ventilátorok - Ház, CPU (borda, radiátor), VGA
- Milyen TV-t vegyek?
- Milyen belső merevlemezt vegyek?
- TCL LCD és LED TV-k
Új hozzászólás Aktív témák
-
Taci
addikt
válasz
sztanozs
#5126
üzenetére
SELECT item_id, item_dateFROM itemsWHEREitem_id IN (select item_id from items_categories wherecategory_id not in (1,3,13,7,20) anditem_id not in (117,132,145,209,211))ORDER BY item_date DESC LIMIT 4(valami régi kódból maradt benne a neve, a feed_id az az item_id az index nevében)
Mivel itt azt mondja, hogy az items_categories táblán nem használ indexet (key = NULL), ezért arra gondoltam, akkor létre hozok egy covering indexet ide:
CREATE INDEX idx_category_id_item_id ON items_categories (category_id,item_id)A sebességen nem javított, de most már így néz ki az explain:
----------
SELECT i.item_id, i.item_dateFROM items as i INNER JOIN items_categories AS c ON i.item_id=c.item_idWHEREc.category_id NOT IN (1,3,13,7,20) ANDi.item_id NOT IN (117,132,145,209,211)GROUP BY i.item_id, i.item_dateORDER BY i.item_date DESC LIMIT 4Itt ha a
GROUP BY i.item_id, i.item_date
helyettGROUP BY i.item_id
van, akkor ennyi a változás:De időben semmit nem jelent.
-
Taci
addikt
válasz
sztanozs
#5126
üzenetére
Mondjuk egy-egy execution plan-t jó volna látni mindegyikre...
Ezekre a fajta információkra gondolsz (a lekérdezés egyes részei mennyi ideig futottak, használt-e indexeket stb.), amit az Explain és a Profiling ad? (Google-ön rákeresve az execution plan-re phpMyAdminban ezeket dobta fel.)
Mert akkor megcsinálom.
-
bambano
titán
válasz
sztanozs
#5126
üzenetére
"az indexet növekvő sorrendben hozza létre így az index végén levő (legnagyobb értékek) rögtön rendelkezésre kell álljanak": szemben azzal, ha csökkenő sorrendben hozza létre, mert akkor az index elején áll rendelkezésre a legnagyobb érték.
normálisan az indexet egyféleképpen kell létrehozni, és ha csökkenő a lekérdezés, akkor egyszerűen reverse scan-t csinál. legalábbis a postgres ilyen, hogy más adatbáziskezelők mit csinálnak, nem tudom.
Új hozzászólás Aktív témák
- DELL Latitude 5420 Core i5-1135G7
- Eladó LG 43UN71003LB 43 4K UHD Smart TV
- Kicsibe van ennél jobb ár-ér arány? Phanteks - Enthoo Evolv ITX - PH-ES215P BK INGYEN Szállítva!
- A kis CUKISÁG! IWIN A1 ITX 600W PSU Ingyen MPL-el Érdekelhet?
- Eladó Sennheiser Momentum 3 bluetooth fejhallgató aktív zajszűréssel
- 27% - Samsung S27FG904XU Odyssey 3D IPS Monitor! 3840x2160 / 165Hz / 1ms / FreeSync
- HIBÁTLAN iPhone 15 Pro 128GB Natural Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS4401
- GAMER PC! i9-13900 / RTX 4070 Super / 32GB DDR5 / 1TB NVMe / B760 / 650w Gold! BeszámítOK
- GEN5!!! 14/12GB/s 1TB Gen5x4 NVMe SSD, 1 év gar
- HIBÁTLAN iPhone 13 128GB Green-1 ÉV GARANCIA - Kártyafüggetlen, MS4347
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

