Hirdetés
- Visszatérnek a Samsung tervezte CPU-magok és GPU az Exynos 2800-ban?
- Apple iPhone 11 - népalma
- Minden a BlackBerry telefonokról és rendszerről
- Mobil flották
- Okosóra és okoskiegészítő topik
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- Eddigi legjobb DxOMark helyezésével zárta 2025-öt a Vivo
- Xiaomi 15T Pro - a téma nincs lezárva
- Milyen okostelefont vegyek?
- Aranyozott különkiadást kapott a Red Magic 11 Pro+
Új hozzászólás Aktív témák
-
Szmeby
tag
válasz
Micsurin
#4778
üzenetére
Nem hiszem, hogy a feladat szovegeben talalni fogsz egy kulcsszot, ami elarulja, mit hova tegyel egy lekerdezesben.
En sem ertem pontosan a problemat, de ha az a gondod, hogy nem latod a kulonbseget a
SELECT e.department_id, last_name, legkisebb
FROM employees e, (SELECT department_id, MIN(salary) legkisebb
FROM employees GROUP BY department_id) min
WHERE e.salary=min.legkisebb AND e.department_id=min.department_id;es a
SELECT e.department_id, last_name, legkisebb
FROM employees e
INNER JOIN (SELECT department_id, MIN(salary) legkisebb
FROM employees GROUP BY department_id) min ON e.department_id=min.department_id
WHERE e.salary=min.legkisebb;kozott, akkor az azert van, mert nincs kulonbseg.
En az utobbi formatumot szoktam meg es szeretem hasznalni. Az utobbi egy ujabb talalmany, a hosidokben az elobbit hasznaltak. De ez a ketfele formatum a subquerytol pont fuggetlen, sima tablakkal ugyanugy alkalmazhato mindket forma.---
Hogy subqueryt tablakent hasznalsz egy lekerdezesben es joinolgatsz, vagy a where feltetelben szursz a subquery eredmenyevel egy masik tabla egy mezojen*, szerintem ez ket annyira eltero dolog, hogy adja magat. Join-ba azert teszed, mert mondjuk a subquery-bol is szeretnel ertekeket megmutatni az eredmenyhalmazban. Vagy mert tobb mezore is szurnel, es join-nal atlathatobb a lekerdezes, vagy mert a DB jobban optimalizalja igy a lekerdezest, mint ugy. Probalgasd, gyakorolj, idovel raerzel!
* Mondjuk valami ilyesmi:
SELECT e.department_id, last_name
FROM employees e
WHERE e.salary=(SELECT MIN(salary) FROM employees min WHERE e.department_id=min.department_id);---
Vagy ha a subqueryt a szelekcioba rakod, hat, meg nem mondom, mikor van ennek haszna. Annyira nem vagyok expert, hogy ezt most igy hirtelen meg tudjam fogalmazni, es sose filozofalgattam azon, hogy milyen kulcsszavak milyen strukturaltsagot implikalnanak. Szelekcioba nagyon ritkan tettem subselectet, mert borzaszto rossz hatasfoku volt.
Szerintem egy jo okolszabaly, hogy ird meg join-nal a lekerdezest, es ha azt latod, hogy a join felesleges, mert mondjuk a kapcsolt tablabol semmit nem mutatsz meg az eredmenyhalmazban, akkor kis atalakitassal talalj neki egy szebb / jobb formatumot. Erdemes kiprobalni, hogy mennyire hatekonyan hajtja vegre a DB az egyik es a masik valtozatot. Sok gyakorlas utan pedig mar raerzel majd, hogy melyik megoldas optimalis, es eleve ugy kezdesz hozza. Meg az exists egy olyan okossag, ami egesz jo hatekonysagot mutat, annak a probalgatasat is ajanlom.
Ha elkepzeled, hogy melyik tabla vagy subquery hany sorral ter vissza, es az alapjan probalod beloni, hogy a DB vajon egyik-masik konstrukcioban mennyire izzadna meg, akkor az talan segit eldonteni, hogy merre erdemes elindulni.
Na de en is kivancsi vagyok egy hozzaerto gondolataira, hatha van egyszerubb mod.
Új hozzászólás Aktív témák
- Tarr Kft. kábeltv, internet, telefon
- AMD FX
- Le Mans Ultimate
- S.T.A.L.K.E.R. 2: Heart of Chornobyl
- Red Dead Redemption 2 (PC)
- Visszatérnek a Samsung tervezte CPU-magok és GPU az Exynos 2800-ban?
- Ingatlanos topic!
- Jövedelem
- Amit látnod kell 80’ – 90’ évek, egész estét betöltő mozi filmjei.
- Suzuki topik
- További aktív témák...
- ÚJ ASUS TUF Gaming M4 WL Bolti ár:16k INGYEN FOXPOST
- Szinte ÚJ ASUS ROG STRIX Impact II Electro Punk Bolti ár:20k INGYEN FOXPOST
- ÚJ (Hiányos) ASUS ROG Harpe Ace Aim Lab Edition Bolti ár:40k INGYEN FOXPOST
- ÚJ ASUS ROG Strix Impact II Wireless Bolti ár:25k INGYEN FOXPOST
- Szinte ÚJ ASUS Rog Spatha X Bolti ár:60k INGYEN FOXPOST
- GYÖNYÖRŰ iPhone 13 Mini 128GB Midnight - 1 ÉV GARANCIA -Kártyafüggetlen, MS4071
- Apple iPhone 11 64GB Kártyafüggetlen 1év Garanciával
- Xiaomi Redmi Note 14 Pro+ / 8/256GB / Kártyafüggetlen / 12Hó Garancia
- BESZÁMÍTÁS! MSI B450M R5 5500 16GB DDR4 512GB SSD RX 7600 8GB ZALMAN i3 NEO be quiet! 700W
- CSX 2x2GB (4GB) DDR2 800 MHz kit
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest


