Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 10 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 02.02.07
Prihlásený: 06.02.07
Príspevky: 7
Témy: 1
Príspevok NapísalOffline : 02.02.2007 8:46

Nazdar, dostal som taku domacu ulohu :D urobit select z jednej tabulky. Jedna sa o tabulku zamestnancov, ktora obsahuje stlpce(id_zamestnanca, meno, priezvisko, id_oddelenia, plat). Ako z nej vyberiem meno a priezvisko zamestnanca s najvyssim platom pre kazde oddelenie? Tak, ak sa niekto z vas bude chvilku nudit... ;)


Offline

Skúsený užívateľ
Skúsený užívateľ
ako na tento select?

Registrovaný: 30.05.06
Prihlásený: 08.10.14
Príspevky: 1756
Témy: 35
Bydlisko: BA - WESTSIDE
Príspevok NapísalOffline : 02.02.2007 13:38

no niečo som skúšal, ale na menej ako 2 selecty to nespravím...

Kód:
SELECT id_oddelenia, MAX( plat ) AS naj_plat
FROM `platy`
GROUP BY oddelenie
ORDER BY naj_plat DESC

toto načítaš do poľa a spravíš malý trik - pomocou tých hodnôt zostavíš druhý SQL dopyt:
Kód:
foreach($pole as $key => $value){
$sql .= " plat ='{$value}'  OR"; // spravime podmienku pre kazdu hodnotu platu
}
$sql=substr($sql, 0, strlen($sql)-3); // odstrihneme retazec " OR" za poslednym platom, lebo by to robilo zle

$result=mysql_query("
SELECT meno, priezvisko, id_oddelenia
FROM `platy`
WHERE ".$sql."
ORDER BY plat DESC
");

a už to máš, už si to len vypíšeš...







_________________
A. S. Tanenbaum píše:
The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 02.02.07
Prihlásený: 06.02.07
Príspevky: 7
Témy: 1
Príspevok Napísal autor témyOffline : 05.02.2007 13:33

vdaka za riesenie, ale zabudol som napisat, ze sa to pokusam urobit len pomocou SQL skriptu(ucim sa totiz Oracle) :roll:


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 02.02.07
Prihlásený: 06.02.07
Príspevky: 7
Témy: 1
Príspevok Napísal autor témyOffline : 05.02.2007 14:40

ok, vyriesene...dik za ochotu


Offline

Prevádzkovateľ fóra
Prevádzkovateľ fóra
ako na tento select?

Registrovaný: 01.05.05
Príspevky: 13348
Témy: 1496
Bydlisko: Bratislava
Príspevok NapísalOffline : 05.02.2007 14:40

rokovic píše:
ok, vyriesene...dik za ochotu
mohol by si to sem aj napisat, mozno niekto bude mat v buducnosti podobny problem tak aby tu nevznikalo dookola to iste







_________________
Streacom DA2 | SilverStone Titanium SX800-LTI 800W | ASRock X299E-ITX/ac | Intel Core i9-9980XE & be quiet! Dark Rock TF | Kingston HyperX Impact 64 GB DDR4 2666 MHz | NVIDIA Titan RTX 24 GB | Intel SSD Optane 905P 480 GB NVMe U.2 & Intel SSD 750 1,2 TB NVMe U.2 & Intel SSD 660p 2 TB NVMe M.2 & Seagate BackUp Plus Portable 56 TB USB | 55" 4K OLED Dell Alienware AW5520QF & 24" LCD EIZO FlexScan EV2451 | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech G603 | Logitech F710 | Harman Kardon Sabre SB 35 & Sennheiser RS 175 | Microsoft Windows 7 Ultimate | APC Back-UPS ES 700 | Lenovo ThinkPad X250 | iPhone X 256 GB & Pitaka Aramid | SilverStone ML05B Milo | Corsair SF600 SFX 600W | ASRock X99E-ITX/ac | Intel Xeon E5-2683 v4 & NOCTUA NH-L12S | Kingston HyperX Savage 32 GB DDR4 2400 MHz | NVIDIA GeForce GT 710 1 GB | Intel SSD Optane Memory 32 GB NVMe M.2 & Intel SSD 730 240 GB SATA | Ubuntu Server
Offline

Skúsený užívateľ
Skúsený užívateľ
ako na tento select?

Registrovaný: 30.05.06
Prihlásený: 08.10.14
Príspevky: 1756
Témy: 35
Bydlisko: BA - WESTSIDE
Príspevok NapísalOffline : 05.02.2007 16:13

aha, no tak to je asi riešené na vyššej úrovni, ako moje databázové vedomosti :) každopádne aj ja som zvedavý na to riešenie...







_________________
A. S. Tanenbaum píše:
The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 02.02.07
Prihlásený: 06.02.07
Príspevky: 7
Témy: 1
Príspevok Napísal autor témyOffline : 05.02.2007 16:14

takze oraclu som to naserviroval takto:

Kód:
select first_name, last_name, department_id, salary from hr.employees e1
where salary in
(select max(salary) from hr.employees e2
where e1.department_id=e2.department_id
group by e2.department_id)
order by 3


funguje to, aj ked asi to pojde urobit aj jednoduchsie


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 02.02.07
Prihlásený: 06.02.07
Príspevky: 7
Témy: 1
Príspevok Napísal autor témyOffline : 05.02.2007 16:23

p360t píše:
aha, no tak to je asi riešené na vyššej úrovni, ako moje databázové vedomosti :) každopádne aj ja som zvedavý na to riešenie...


ja som s databazami zacal len nedavno a tento selekt ma fakt dostal(a to sa mi na prvy pohlad zdal dost lahky :rolleyes: )


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 02.02.07
Prihlásený: 06.02.07
Príspevky: 7
Témy: 1
Príspevok Napísal autor témyOffline : 06.02.2007 8:17

keby to niekoho zaujimalo mam tu este jedno elegantnejsie riesenie(zial nie z mojej hlavy :) )

Kód:
select first_name,last_name, max_plat from hr.employees
join
(select department_id, max(salary) max_plat from hr.employees group by department_id) t
on hr.employees.department_id = t.department_id and salary = max_plat


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 02.02.07
Prihlásený: 06.02.07
Príspevky: 7
Témy: 1
Príspevok Napísal autor témyOffline : 07.02.2007 8:33

a zoberie to aj dvojicu, tak to je uz uplne easy

Kód:
select last_name, department_id, salary
from hr.employees
where (department_id,salary) in
(select department_id, max(salary) from hr.employees
group by department_id)
order by 2


Odpovedať na tému [ Príspevkov: 10 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. select tento tyzden, nasledujuci tyzden

v Databázy

22

1443

03.01.2011 13:17

miro-boss Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako stiahnut tento koncert ako mp3?

v Audio programy

3

516

27.11.2020 22:20

patro16 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako zmenit vystup - select mysql

v PHP, ASP

3

544

29.07.2008 8:02

stenley Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ako na zabranenie zmeny moznosti v <select>e

v HTML, XHTML, XML, CSS

3

409

31.03.2010 18:42

stenley Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ako nastavit velkost pisma vo volbach <select>u

v HTML, XHTML, XML, CSS

2

786

03.03.2011 21:12

johnny04501 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ako automaticky presúvať políčka elementu <select> podľa obľúbenosti

v HTML, XHTML, XML, CSS

1

449

12.11.2016 9:58

BX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako na tento procak?

v Chladiče a všetky druhy chladenia

2

783

20.10.2006 15:03

looser Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. AKO na tento panel?

v Operačné systémy Microsoft

3

485

27.04.2007 20:48

Devil_SK Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. AKO NA TENTO BIOS

v Biosy a ladenie výkonu

2

702

16.08.2007 21:11

0r0l Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ako rozobrat tento sifon?

v Život, životný štýl, móda, bývanie

3

693

21.06.2017 15:37

4040 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ako hodnotite tento NB?

v PC zostavy

10

556

17.03.2008 13:43

mimkork Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Ako nastavit tento datepicker

v JavaScript, VBScript, Ajax

7

774

30.11.2017 13:46

unset(array[0]) Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako na tento dotaz

v Databázy

3

748

21.06.2009 18:04

p360t Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako sa vola tento script

v JavaScript, VBScript, Ajax

1

521

07.02.2010 13:37

rooobertek Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako je obmedzeny tento algoritmus

v Assembler, C, C++, Pascal, Java

0

285

11.11.2014 18:37

janik12333 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. existuje rok rovnaky ako tento?

v Krčma

8

1299

01.01.2008 12:25

twistik Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra