Advertisement
Guest User

Untitled

a guest
Nov 19th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.81 KB | None | 0 0
  1. --17
  2. SELECT
  3. K.PSEUDO "POLUJE W POLU",
  4. NVL(K.PRZYDZIAL_MYSZY, 0) "PRZYDZIAL MYSZY",
  5. B.NAZWA "BANDA"
  6. FROM
  7. Kocury K JOIN Bandy B ON K.NR_BANDY = B.NR_BANDY
  8. WHERE
  9. (B.TEREN = 'POLE' OR B.TEREN = 'CALOSC') AND NVL(K.PRZYDZIAL_MYSZY, 0) > 50;
  10.  
  11.  
  12. --18
  13. SELECT
  14. K1.IMIE "IMIE",
  15. K1.W_STADKU_OD "POLUJE OD"
  16. FROM
  17. Kocury K1, Kocury K2
  18. WHERE
  19. K2.IMIE = 'JACEK' AND K1.W_STADKU_OD < K2.W_STADKU_OD
  20. ORDER BY
  21. K1.W_STADKU_OD DESC;
  22.  
  23. --LUB
  24.  
  25. SELECT
  26. K1.IMIE "IMIE",
  27. K1.W_STADKU_OD "POLUJE OD"
  28. FROM
  29. Kocury K1,
  30. (
  31. SELECT
  32. W_STADKU_OD "DATA JACKA"
  33. FROM
  34. Kocury
  35. WHERE
  36. IMIE = 'JACEK'
  37. ) K2
  38. WHERE
  39. K1.W_STADKU_OD < K2."DATA JACKA"
  40. ORDER BY
  41. K1.W_STADKU_OD DESC;
  42.  
  43.  
  44. --19a
  45. SELECT
  46. K1.IMIE "Imie",
  47. K1.FUNKCJA "Funkcja",
  48. NVL(K2.IMIE, ' ') "Szef 1",
  49. NVL(K3.IMIE, ' ') "Szef 2",
  50. NVL(K4.IMIE, ' ') "Szef 3"
  51. FROM
  52. ((Kocury K1 LEFT JOIN Kocury K2 ON K1.SZEF = K2.PSEUDO)
  53. LEFT JOIN Kocury K3 ON K2.SZEF = K3.PSEUDO)
  54. LEFT JOIN Kocury K4 ON K3.SZEF = K4.PSEUDO
  55. WHERE
  56. K1.FUNKCJA = 'KOT' OR K1.FUNKCJA = 'MILUSIA';
  57.  
  58.  
  59. --19b
  60. SELECT
  61. "Imie" "Imie",
  62. "Funkcja" "Funkcja",
  63. NVL("2", ' ') "Szef 1",
  64. NVL("3", ' ') "Szef 2",
  65. NVL("4", ' ') "Szef 3"
  66. FROM
  67. (SELECT
  68. CONNECT_BY_ROOT IMIE "Imie",
  69. CONNECT_BY_ROOT FUNKCJA "Funkcja",
  70. level "Poziom",
  71. IMIE "Imie szefa"
  72. FROM
  73. Kocury
  74. CONNECT BY PRIOR
  75. SZEF = PSEUDO
  76. START WITH
  77. FUNKCJA = 'KOT' OR
  78. FUNKCJA = 'MILUSIA'
  79. )
  80. PIVOT
  81. (
  82. MIN("Imie szefa")
  83. FOR "Poziom" IN (2, 3, 4)
  84. );
  85.  
  86.  
  87. --19c
  88. SELECT
  89. CONNECT_BY_ROOT IMIE "Imie",
  90. CONNECT_BY_ROOT FUNKCJA "Funkcja",
  91. SUBSTR(SYS_CONNECT_BY_PATH(RPAD(IMIE, 10), '| '), 10+2) "Imiona kolejnych szefów"
  92. FROM
  93. Kocury
  94. WHERE
  95. SZEF IS NULL
  96. CONNECT BY PRIOR
  97. SZEF = PSEUDO
  98. START WITH
  99. FUNKCJA = 'KOT' OR
  100. FUNKCJA = 'MILUSIA';
  101.  
  102.  
  103. --20
  104. SELECT
  105. IMIE "Imie kotki",
  106. NAZWA "Nazwa bandy",
  107. IMIE_WROGA "Imie wroga",
  108. STOPIEN_WROGOSCI "Ocena wroga",
  109. DATA_INCYDENTU "Data inc."
  110. FROM
  111. ((Kocury K NATURAL JOIN Bandy B) NATURAL JOIN Wrogowie_kocurow WK) NATURAL JOIN Wrogowie W
  112. WHERE
  113. PLEC = 'D' AND
  114. DATA_INCYDENTU > TO_DATE('01.01.2007', 'DD.MM.YYYY');
  115.  
  116.  
  117. --21
  118. SELECT
  119. NAZWA "Nazwa bandy",
  120. COUNT(DISTINCT PSEUDO) "Koty z wrogami"
  121. FROM
  122. (((Kocury K NATURAL JOIN Bandy B)
  123. NATURAL JOIN Wrogowie_kocurow WK)
  124. NATURAL JOIN Wrogowie W)
  125. GROUP BY
  126. NAZWA;
  127.  
  128.  
  129. --22
  130. SELECT
  131. FUNKCJA "Funkcja",
  132. PSEUDO "Pseudonim kota",
  133. COUNT(IMIE_WROGA) "Liczba wrogow"
  134. FROM
  135. Kocury NATURAL JOIN Wrogowie_kocurow
  136. GROUP BY
  137. PSEUDO, FUNKCJA
  138. HAVING
  139. COUNT(IMIE_WROGA) > 1;
  140.  
  141.  
  142. --23
  143. SELECT
  144. IMIE "IMIE",
  145. (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12 "DAWKA ROCZNA",
  146. 'powyzej 864' "DAWKA"
  147. FROM
  148. Kocury
  149. WHERE
  150. (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12 > 864 AND NVL(MYSZY_EXTRA, 0) > 0
  151. UNION ALL
  152. SELECT
  153. IMIE "IMIE",
  154. (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12 "DAWKA ROCZNA",
  155. '864' "DAWKA"
  156. FROM
  157. Kocury
  158. WHERE
  159. (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12 = 864 AND NVL(MYSZY_EXTRA, 0) > 0
  160. UNION ALL
  161. SELECT
  162. IMIE "IMIE",
  163. (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12 "DAWKA ROCZNA",
  164. 'ponizej 864' "DAWKA"
  165. FROM
  166. Kocury
  167. WHERE
  168. (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12 < 864 AND NVL(MYSZY_EXTRA, 0) > 0
  169. ORDER BY 2 DESC;
  170.  
  171.  
  172. --24a
  173. SELECT DISTINCT
  174. B.NR_BANDY "NR BANDY",
  175. B.NAZWA "NAZWA",
  176. B.TEREN "TEREN"
  177. FROM
  178. Bandy B LEFT JOIN Kocury K ON B.NR_BANDY = K.NR_BANDY
  179. WHERE
  180. K.NR_BANDY IS NULL;
  181.  
  182.  
  183. --24b
  184. SELECT DISTINCT
  185. B.NR_BANDY "NR BANDY",
  186. B.NAZWA "NAZWA",
  187. B.TEREN "TEREN"
  188. FROM
  189. Bandy B LEFT JOIN Kocury K ON B.NR_BANDY = K.NR_BANDY
  190. MINUS
  191. SELECT DISTINCT
  192. B.NR_BANDY "NR BANDY",
  193. B.NAZWA "NAZWA",
  194. B.TEREN "TEREN"
  195. FROM
  196. Bandy B JOIN Kocury K ON B.NR_BANDY = K.NR_BANDY;
  197.  
  198.  
  199. --25
  200. SELECT
  201. IMIE "IMIE",
  202. FUNKCJA "FUNKCJA",
  203. PRZYDZIAL_MYSZY "PRZYDZIAL MYSZY"
  204. FROM
  205. Kocury K1,
  206. (
  207. SELECT
  208. NVL(PRZYDZIAL_MYSZY, 0)*3 "Max myszy"
  209. FROM
  210. Kocury NATURAL JOIN Bandy
  211. WHERE
  212. ROWNUM = 1 AND FUNKCJA = 'MILUSIA' AND (TEREN IN ('SAD', 'CALOSC'))
  213. ORDER BY
  214. PRZYDZIAL_MYSZY DESC
  215. )
  216. WHERE
  217. NVL(PRZYDZIAL_MYSZY, 0) >= "Max myszy";
  218.  
  219. --LUB
  220.  
  221. SELECT
  222. IMIE "IMIE",
  223. FUNKCJA "FUNKCJA",
  224. NVL(PRZYDZIAL_MYSZY, 0) "PRZYDZIAL MYSZY"
  225. FROM
  226. Kocury,
  227. (
  228. SELECT
  229. NVL(PRZYDZIAL_MYSZY, 0)*3 "Max myszy"
  230. FROM
  231. Kocury NATURAL JOIN Bandy
  232. WHERE
  233. FUNKCJA = 'MILUSIA' AND
  234. (TEREN IN ('SAD', 'CALOSC'))
  235. ORDER BY
  236. PRZYDZIAL_MYSZY DESC
  237. FETCH FIRST ROW ONLY
  238. )
  239. WHERE
  240. NVL(PRZYDZIAL_MYSZY, 0) >= "Max myszy";
  241.  
  242. --LUB
  243.  
  244. SELECT
  245. IMIE "IMIE",
  246. FUNKCJA "FUNKCJA",
  247. NVL(PRZYDZIAL_MYSZY, 0) "PRZYDZIAL MYSZY"
  248. FROM
  249. Kocury
  250. WHERE
  251. NVL(PRZYDZIAL_MYSZY, 0) >= ALL (SELECT NVL(PRZYDZIAL_MYSZY, 0)*3
  252. FROM Kocury NATURAL JOIN Bandy
  253. WHERE
  254. FUNKCJA = 'MILUSIA' AND
  255. TEREN IN ('SAD', 'CALOSC'));
  256.  
  257.  
  258. --26
  259. SELECT
  260. FUNKCJA "Funkcja",
  261. ROUND(AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))) "Srednio najw. i najm. myszy"
  262. FROM
  263. Kocury
  264. WHERE
  265. FUNKCJA <> 'SZEFUNIO'
  266. GROUP BY
  267. FUNKCJA
  268. HAVING
  269. ROUND(AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))) >= ALL
  270. (
  271. SELECT
  272. ROUND(AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)))
  273. FROM
  274. Kocury
  275. WHERE
  276. FUNKCJA <> 'SZEFUNIO'
  277. GROUP BY
  278. FUNKCJA
  279. )
  280. OR
  281. ROUND(AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))) <= ALL
  282. (
  283. SELECT
  284. ROUND(AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)))
  285. FROM
  286. Kocury
  287. WHERE
  288. FUNKCJA <> 'SZEFUNIO'
  289. GROUP BY
  290. FUNKCJA
  291. );
  292.  
  293.  
  294. --27a
  295. SELECT
  296. PSEUDO "PSEUDO",
  297. NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0) "ZJADA"
  298. FROM
  299. Kocury K1
  300. WHERE
  301. (
  302. SELECT
  303. COUNT(DISTINCT NVL(K2.PRZYDZIAL_MYSZY,0)+NVL(K2.MYSZY_EXTRA, 0)) "RANKING"
  304. FROM
  305. Kocury K2
  306. WHERE
  307. NVL(K2.PRZYDZIAL_MYSZY,0)+NVL(K2.MYSZY_EXTRA, 0) >= NVL(K1.PRZYDZIAL_MYSZY,0)+NVL(K1.MYSZY_EXTRA, 0)
  308. ) <= &n
  309. ORDER BY
  310. ZJADA DESC;
  311.  
  312. --27b
  313. WITH
  314. Ranking AS
  315. (SELECT
  316. ROWNUM "N",
  317. ZJADA "ZJADA"
  318. FROM
  319. (
  320. SELECT
  321. DISTINCT NVL(K2.PRZYDZIAL_MYSZY,0)+NVL(K2.MYSZY_EXTRA, 0) "ZJADA"
  322. FROM
  323. Kocury K2
  324. ORDER BY
  325. ZJADA DESC)
  326. ),
  327. KocuryZjadaja AS
  328. (
  329. SELECT
  330. PSEUDO "PSEUDO",
  331. NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0) "ZJADA"
  332. FROM
  333. Kocury
  334. )
  335. SELECT
  336. PSEUDO "PSEUDO",
  337. ZJADA "ZJADA"
  338. FROM
  339. Ranking NATURAL JOIN KocuryZjadaja
  340. WHERE
  341. N <= &n
  342. ORDER BY
  343. ZJADA DESC;
  344.  
  345. --27c
  346. SELECT
  347. K1.PSEUDO "PSEUDO",
  348. NVL(K1.PRZYDZIAL_MYSZY,0)+NVL(K1.MYSZY_EXTRA, 0) "ZJADA"
  349. FROM
  350. Kocury K2, Kocury K1
  351. WHERE
  352. NVL(K2.PRZYDZIAL_MYSZY,0)+NVL(K2.MYSZY_EXTRA, 0) >= NVL(K1.PRZYDZIAL_MYSZY,0)+NVL(K1.MYSZY_EXTRA, 0)
  353. GROUP BY
  354. K1.PSEUDO, NVL(K1.PRZYDZIAL_MYSZY,0)+NVL(K1.MYSZY_EXTRA, 0)
  355. HAVING
  356. COUNT (DISTINCT NVL(K2.PRZYDZIAL_MYSZY,0)+NVL(K2.MYSZY_EXTRA, 0)) <= &n
  357. ORDER BY
  358. ZJADA DESC;
  359.  
  360. --27d
  361. SELECT
  362. PSEUDO "PSEUDO",
  363. ZJADA "ZJADA"
  364. FROM
  365. (
  366. SELECT
  367. PSEUDO "PSEUDO",
  368. NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) "ZJADA",
  369. DENSE_RANK()
  370. OVER(ORDER BY NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) DESC)
  371. "RANKING"
  372. FROM
  373. Kocury
  374. ORDER BY
  375. NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) DESC
  376. )
  377. WHERE
  378. RANKING <= &n;
  379.  
  380. --28
  381. WITH
  382. Lata AS
  383. (
  384. SELECT DISTINCT
  385. TO_CHAR(W_STADKU_OD, 'YYYY') "ROK",
  386. COUNT(PSEUDO)
  387. OVER(PARTITION BY EXTRACT(YEAR FROM W_STADKU_OD)) "LICZBA WSTAPIEN"
  388. FROM
  389. Kocury
  390. ),
  391. Sr AS
  392. (
  393. SELECT
  394. 'Srednia' "ROK",
  395. AVG("LICZBA WSTAPIEN") "LICZBA WSTAPIEN"
  396. FROM
  397. Lata
  398. ),
  399. Dist AS
  400. (
  401. SELECT
  402. L.ROK "ROK",
  403. L."LICZBA WSTAPIEN" "LICZBA WSTAPIEN",
  404. (L."LICZBA WSTAPIEN" - S."LICZBA WSTAPIEN") "DIST"
  405. FROM
  406. Lata L, Sr S
  407. )
  408. SELECT
  409. ROK "ROK",
  410. "LICZBA WSTAPIEN" "LICZBA WSTAPIEN"
  411. FROM
  412. Dist
  413. WHERE
  414. DIST <= 0 AND DIST >= ALL (SELECT DIST FROM Dist WHERE DIST <= 0)
  415.  
  416. UNION ALL
  417.  
  418. SELECT
  419. ROK "ROK",
  420. ROUND("LICZBA WSTAPIEN", 7) "LICZBA WSTAPIEN"
  421. FROM Sr
  422.  
  423. UNION ALL
  424.  
  425. SELECT
  426. ROK "ROK",
  427. "LICZBA WSTAPIEN" "LICZBA WSTAPIEN"
  428. FROM
  429. Dist
  430. WHERE
  431. DIST >= 0 AND DIST <= ALL (SELECT DIST FROM Dist WHERE DIST >= 0)
  432.  
  433. ORDER BY 2;
  434.  
  435.  
  436. --29a
  437. SELECT
  438. K1.IMIE "IMIE",
  439. NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0) "ZJADA",
  440. K1.NR_BANDY "NR_BANDY",
  441. TO_CHAR(AVG(NVL(K2.PRZYDZIAL_MYSZY, 0)+NVL(K2.MYSZY_EXTRA, 0)), '99.00') "SREDNIA BANDY"
  442. FROM
  443. Kocury K1 JOIN Kocury K2 ON K1.NR_BANDY = K2.NR_BANDY
  444. WHERE
  445. K1.PLEC = 'M'
  446. GROUP BY
  447. K1.IMIE, K1.NR_BANDY, NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0)
  448. HAVING
  449. AVG(NVL(K2.PRZYDZIAL_MYSZY, 0)+NVL(K2.MYSZY_EXTRA, 0)) >= NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0);
  450.  
  451.  
  452. --29b
  453. SELECT
  454. IMIE "IMIE",
  455. NR_BANDY "NR_BANDY",
  456. NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) "ZJADA",
  457. "SREDNIA BANDY" "SREDNIA BANDY"
  458. FROM
  459. Kocury JOIN
  460. (
  461. SELECT
  462. NR_BANDY,
  463. TO_CHAR(AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)), '99.99') "SREDNIA BANDY"
  464. FROM
  465. Kocury
  466. GROUP BY
  467. NR_BANDY
  468. ) USING(NR_BANDY)
  469. WHERE
  470. PLEC = 'M' AND NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) <= TO_NUMBER("SREDNIA BANDY");
  471.  
  472.  
  473. --29c
  474. SELECT
  475. IMIE "IMIE",
  476. NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) "ZJADA",
  477. NR_BANDY "NR_BANDY",
  478. TO_CHAR((
  479. SELECT
  480. AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))
  481. FROM
  482. Kocury
  483. WHERE
  484. K1.NR_BANDY = NR_BANDY
  485. GROUP BY
  486. NR_BANDY
  487. ), '99.99') "SREDNIA BANDY"
  488. FROM
  489. Kocury K1
  490. WHERE
  491. PLEC = 'M' AND
  492. (
  493. SELECT
  494. AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))
  495. FROM
  496. Kocury
  497. WHERE
  498. NR_BANDY = K1.NR_BANDY
  499. GROUP BY
  500. NR_BANDY
  501. ) >= (NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0));
  502.  
  503.  
  504. --30
  505. SELECT
  506. IMIE "IMIE",
  507. W_STADKU_OD || ' ' "WSTAPIL DO STADKA",
  508. ' '" "
  509. FROM
  510. Kocury K JOIN Bandy B ON K.NR_BANDY = B.NR_BANDY
  511. WHERE
  512. EXISTS
  513. (
  514. SELECT
  515. W_STADKU_OD
  516. FROM
  517. Kocury
  518. WHERE
  519. NR_BANDY = K.NR_BANDY AND W_STADKU_OD > K.W_STADKU_OD
  520. ) AND
  521. EXISTS
  522. (
  523. SELECT
  524. W_STADKU_OD
  525. FROM
  526. Kocury
  527. WHERE
  528. NR_BANDY = K.NR_BANDY AND W_STADKU_OD < K.W_STADKU_OD
  529. )
  530.  
  531. UNION ALL
  532.  
  533. SELECT
  534. IMIE "IMIE",
  535. W_STADKU_OD || ' <---' "WSTAPIL DO STADKA",
  536. 'NAJSTARSZY STA?EM W BANDZIE ' || NAZWA " "
  537. FROM
  538. Kocury K JOIN Bandy B ON K.NR_BANDY = B.NR_BANDY
  539. WHERE
  540. NOT EXISTS
  541. (
  542. SELECT
  543. W_STADKU_OD
  544. FROM
  545. Kocury
  546. WHERE
  547. NR_BANDY = K.NR_BANDY AND W_STADKU_OD < K.W_STADKU_OD
  548. )
  549.  
  550. UNION ALL
  551.  
  552. SELECT
  553. IMIE "IMIE",
  554. W_STADKU_OD || ' <---' "WSTAPIL DO STADKA",
  555. 'NAJMLODSZY STA?EM W BANDZIE ' || NAZWA " "
  556. FROM
  557. Kocury K JOIN Bandy B ON K.NR_BANDY = B.NR_BANDY
  558. WHERE
  559. NOT EXISTS
  560. (
  561. SELECT
  562. W_STADKU_OD
  563. FROM
  564. Kocury
  565. WHERE
  566. NR_BANDY = K.NR_BANDY AND W_STADKU_OD > K.W_STADKU_OD
  567. )
  568.  
  569. ORDER BY 1;
  570.  
  571.  
  572. --31
  573. CREATE OR REPLACE VIEW STAT_BAND (NAZWA_BANDY, SRE_SPOZ, MAX_SPOZ, MIN_SPOZ, KOTY, KOTY_Z_DOD)
  574. AS
  575. SELECT
  576. B.NAZWA,
  577. AVG(NVL(K1.PRZYDZIAL_MYSZY, 0)),
  578. MAX(NVL(K1.PRZYDZIAL_MYSZY, 0)),
  579. MIN(NVL(K1.PRZYDZIAL_MYSZY, 0)),
  580. COUNT(K1.PSEUDO),
  581. (SELECT
  582. COUNT(K2.PSEUDO)
  583. FROM
  584. Kocury K2
  585. WHERE
  586. K2.NR_BANDY = B.NR_BANDY AND NVL(K2.MYSZY_EXTRA, 0) > 0)
  587. FROM
  588. Kocury K1, Bandy B
  589. WHERE
  590. K1.NR_BANDY = B.NR_BANDY
  591. GROUP BY
  592. B.NAZWA, B.NR_BANDY;
  593.  
  594. SELECT * FROM STAT_BAND;
  595.  
  596. SELECT
  597. PSEUDO "PSEUDONIM",
  598. IMIE "IMIE",
  599. FUNKCJA "FUNKCJA",
  600. NVL(PRZYDZIAL_MYSZY, 0) "ZJADA",
  601. ' OD ' || MIN_SPOZ "GRANICE",
  602. 'DO ' || MAX_SPOZ "SPOZYCIA",
  603. W_STADKU_OD "LOWI OD"
  604. FROM
  605. KOCURY JOIN (BANDY B JOIN STAT_BAND SB ON B.NAZWA = SB.NAZWA_BANDY) USING(NR_BANDY)
  606. WHERE
  607. PSEUDO = '&pseudonim';
  608.  
  609. --32
  610. CREATE OR REPLACE VIEW CZARNI_MYSLIWI(NR_BANDY, NAZWA, PSEUDO, PLEC, W_STADKU_OD, PRZYDZIAL_MYSZY, MYSZY_EXTRA)
  611. AS
  612. SELECT
  613. NR_BANDY,
  614. NAZWA,
  615. PSEUDO,
  616. PLEC,
  617. W_STADKU_OD,
  618. NVL(PRZYDZIAL_MYSZY, 0),
  619. NVL(MYSZY_EXTRA, 0)
  620. FROM
  621. KOCURY K NATURAL JOIN BANDY
  622. WHERE
  623. NAZWA IN ('CZARNI RYCERZE', 'LACIACI MYSLIWI');
  624.  
  625. SELECT
  626. PSEUDO "Pseudonim",
  627. PLEC "Plec",
  628. PRZYDZIAL_MYSZY "Myszy przed podw.",
  629. MYSZY_EXTRA "Extra przed podw."
  630. FROM
  631. CZARNI_MYSLIWI CM
  632. WHERE
  633. (
  634. SELECT
  635. COUNT(DISTINCT W_STADKU_OD)
  636. FROM
  637. CZARNI_MYSLIWI CM2
  638. WHERE
  639. CM.NAZWA = CM2.NAZWA AND CM.W_STADKU_OD > CM2.W_STADKU_OD
  640. ) < 3;
  641.  
  642. UPDATE
  643. Kocury K1
  644. SET
  645. PRZYDZIAL_MYSZY = DECODE(PLEC,
  646. 'D', NVL(PRZYDZIAL_MYSZY, 0)+0.1*
  647. (SELECT MIN(NVL(K.PRZYDZIAL_MYSZY, 0))
  648. FROM Kocury K),
  649. 'M', NVL(PRZYDZIAL_MYSZY, 0)+10),
  650. MYSZY_EXTRA = NVL(MYSZY_EXTRA, 0)+(0.15*
  651. (SELECT AVG(NVL(CM.MYSZY_EXTRA, 0))
  652. FROM CZARNI_MYSLIWI CM
  653. WHERE CM.NR_BANDY = K1.NR_BANDY))
  654. WHERE
  655. NR_BANDY IN (2, 4) AND
  656. (
  657. SELECT
  658. COUNT(DISTINCT W_STADKU_OD)
  659. FROM
  660. CZARNI_MYSLIWI CM
  661. WHERE
  662. K1.NR_BANDY = CM.NR_BANDY AND K1.W_STADKU_OD > CM.W_STADKU_OD
  663. ) < 3;
  664.  
  665. SELECT
  666. PSEUDO "Pseudonim",
  667. PLEC "Plec",
  668. PRZYDZIAL_MYSZY "Myszy po podw.",
  669. MYSZY_EXTRA "Extra po podw."
  670. FROM
  671. CZARNI_MYSLIWI CM
  672. WHERE
  673. (
  674. SELECT
  675. COUNT(DISTINCT W_STADKU_OD)
  676. FROM
  677. CZARNI_MYSLIWI CM2
  678. WHERE
  679. CM.NAZWA = CM2.NAZWA AND CM.W_STADKU_OD > CM2.W_STADKU_OD
  680. ) < 3;
  681.  
  682. ROLLBACK;
  683.  
  684.  
  685.  
  686. --33a
  687. CLEAR COLUMNS BREAKS COMPUTES
  688. SET FEEDBACK OFF
  689. SET LINESIZE 100
  690. COLUMN NAZWA_BN HEADING 'NAZWA BANDY'
  691. COLUMN PLEC HEADING 'PLEC'
  692. COLUMN ILE FORMAT 999 HEADING 'ILE'
  693. COLUMN SZEFUNIO FORMAT 999 HEADING 'SZEFUNIO'
  694. COLUMN BANDZIOR FORMAT 999 HEADING 'BANDZIOR'
  695. COLUMN LOWCZY FORMAT 999 HEADING 'LOWCZY'
  696. COLUMN LAPACZ FORMAT 999 HEADING 'LAPACZ'
  697. COLUMN KOT FORMAT 999 HEADING 'KOT'
  698. COLUMN MILUSIA FORMAT 999 HEADING 'MILUSIA'
  699. COLUMN DZIELCZY FORMAT 999 HEADING 'DZIELCZY'
  700. COLUMN SUMA FORMAT 9999 HEADING 'SUMA'
  701. BREAK ON REPORT
  702. COMPUTE SUM LABEL 'ZJADA RAZEM' OF ILE SZEFUNIO BANDZIOR LOWCZY LAPACZ KOT MILUSIA DZIELCZY SUMA ON REPORT
  703. SELECT
  704. DECODE(PLEC,
  705. 'D',(SELECT NAZWA FROM Bandy B WHERE B.NR_BANDY = K1.NR_BANDY),
  706. 'M', ' ') NAZWA_BN,
  707. DECODE(PLEC, 'D', 'Kotka', 'M', 'Kocor') PLEC,
  708. COUNT(PSEUDO) ILE,
  709. NVL((
  710. SELECT
  711. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  712. FROM
  713. Kocury K2
  714. WHERE
  715. K2.NR_BANDY = K1.NR_BANDY AND
  716. K2.PLEC = K1.PLEC AND
  717. K2.FUNKCJA = 'SZEFUNIO'
  718. ), 0) SZEFUNIO,
  719. NVL((
  720. SELECT
  721. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  722. FROM
  723. Kocury K2
  724. WHERE
  725. K2.NR_BANDY = K1.NR_BANDY AND
  726. K2.PLEC = K1.PLEC AND
  727. K2.FUNKCJA = 'BANDZIOR'
  728. ), 0) BANDZIOR,
  729. NVL((
  730. SELECT
  731. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  732. FROM
  733. Kocury K2
  734. WHERE
  735. K2.NR_BANDY = K1.NR_BANDY AND
  736. K2.PLEC = K1.PLEC AND
  737. K2.FUNKCJA = 'LOWCZY'
  738. ), 0) LOWCZY,
  739. NVL((
  740. SELECT
  741. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  742. FROM
  743. Kocury K2
  744. WHERE
  745. K2.NR_BANDY = K1.NR_BANDY AND
  746. K2.PLEC = K1.PLEC AND
  747. K2.FUNKCJA = 'LAPACZ'
  748. ), 0) LAPACZ,
  749. NVL((
  750. SELECT
  751. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  752. FROM
  753. Kocury K2
  754. WHERE
  755. K2.NR_BANDY = K1.NR_BANDY AND
  756. K2.PLEC = K1.PLEC AND
  757. K2.FUNKCJA = 'KOT'
  758. ), 0) KOT,
  759. NVL((
  760. SELECT
  761. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  762. FROM
  763. Kocury K2
  764. WHERE
  765. K2.NR_BANDY = K1.NR_BANDY AND
  766. K2.PLEC = K1.PLEC AND
  767. K2.FUNKCJA = 'MILUSIA'
  768. ), 0) MILUSIA,
  769. NVL((
  770. SELECT
  771. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  772. FROM
  773. Kocury K2
  774. WHERE
  775. K2.NR_BANDY = K1.NR_BANDY AND
  776. K2.PLEC = K1.PLEC AND
  777. K2.FUNKCJA = 'DZIELCZY'
  778. ), 0) DZIELCZY, NVL((
  779. SELECT
  780. SUM(NVL(PRZYDZIAL_MYSZY,0)+NVL(MYSZY_EXTRA, 0))
  781. FROM
  782. Kocury K2
  783. WHERE
  784. K2.NR_BANDY = K1.NR_BANDY AND
  785. K2.PLEC = K1.PLEC
  786. ), 0) SUMA
  787. FROM
  788. Kocury K1
  789. GROUP BY
  790. K1.NR_BANDY, PLEC
  791. ORDER BY
  792. (SELECT NAZWA FROM Bandy B WHERE B.NR_BANDY = K1.NR_BANDY), PLEC DESC;
  793.  
  794. SET FEEDBACK ON
  795. SET LINESIZE 50
  796. CLEAR COLUMNS BREAKS COMPUTES
  797.  
  798. --33b
  799. SELECT
  800. DECODE(PLEC, 'D', NAZWA,
  801. 'M', ' ',
  802. 'ZX', '---------------',
  803. 'ZY' , 'ZJADA RAZEM') "NAZWA BANDY",
  804. DECODE(PLEC, 'D', 'Kotka',
  805. 'M', 'Kocor',
  806. 'ZX', '-----------',
  807. 'ZY', ' ') "PLEC",
  808. ILE "ILE",
  809. (CASE
  810. WHEN (NVL(SZEFUNIO, 0) < 0)
  811. THEN '---------'
  812. ELSE
  813. TO_CHAR(NVL(SZEFUNIO, 0))
  814. END) "SZEFUNIO",
  815. (CASE
  816. WHEN (NVL(BANDZIOR, 0) < 0)
  817. THEN '---------'
  818. ELSE
  819. TO_CHAR(NVL(BANDZIOR, 0))
  820. END) "BANDZIOR",
  821. (CASE
  822. WHEN (NVL(LOWCZY, 0) < 0)
  823. THEN '---------'
  824. ELSE
  825. TO_CHAR(NVL(LOWCZY, 0))
  826. END) "LOWCZY",
  827. (CASE
  828. WHEN (NVL(LAPACZ, 0) < 0)
  829. THEN '---------'
  830. ELSE
  831. TO_CHAR(NVL(LAPACZ, 0))
  832. END) "LAPACZ",
  833. (CASE
  834. WHEN (NVL(KOT, 0) < 0)
  835. THEN '---------'
  836. ELSE
  837. TO_CHAR(NVL(KOT, 0))
  838. END) "KOT",
  839. (CASE
  840. WHEN (NVL(MILUSIA, 0) < 0)
  841. THEN '---------'
  842. ELSE
  843. TO_CHAR(NVL(MILUSIA, 0))
  844. END) "MILUSIA",
  845. (CASE
  846. WHEN (NVL(DZIELCZY, 0) < 0)
  847. THEN '---------'
  848. ELSE
  849. TO_CHAR(NVL(DZIELCZY, 0))
  850. END) "DZIELCZY",
  851. (CASE
  852. WHEN (NVL(SUMA, 0) < 0)
  853. THEN '---------'
  854. ELSE
  855. TO_CHAR(NVL(SUMA, 0))
  856. END) "SUMA"
  857. FROM
  858. (
  859. SELECT
  860. *
  861. FROM
  862. (
  863. (SELECT
  864. FUNKCJA,
  865. NAZWA,
  866. PLEC,
  867. NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) CALK_SPOZ,
  868. TO_CHAR(COUNT(PSEUDO)
  869. OVER(PARTITION BY NAZWA, PLEC)) ILE,
  870. SUM(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))
  871. OVER(PARTITION BY NAZWA, PLEC) SUMA
  872. FROM
  873. Kocury NATURAL JOIN BANDY)
  874. PIVOT
  875. (
  876. SUM(CALK_SPOZ)
  877. FOR FUNKCJA
  878. IN ('SZEFUNIO' SZEFUNIO, 'BANDZIOR' BANDZIOR, 'LOWCZY' LOWCZY,
  879. 'LAPACZ' LAPACZ, 'KOT' KOT, 'MILUSIA' MILUSIA, 'DZIELCZY' DZIELCZY)
  880. )
  881. )
  882. UNION ALL
  883. (
  884. SELECT *
  885. FROM
  886. (
  887. (SELECT
  888. FUNKCJA,
  889. 'ZY' "NAZWA BANDY",
  890. 'ZY' "PLEC",
  891. NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0) CALK_SPOZ,
  892. ' ' ILE,
  893. (
  894. SELECT
  895. SUM(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))
  896. FROM
  897. Kocury
  898. ) SUMA
  899. FROM
  900. Kocury NATURAL JOIN BANDY)
  901. PIVOT
  902. (
  903. SUM(CALK_SPOZ)
  904. FOR FUNKCJA
  905. IN ('SZEFUNIO' SZEFUNIO, 'BANDZIOR' BANDZIOR, 'LOWCZY' LOWCZY,
  906. 'LAPACZ' LAPACZ, 'KOT' KOT, 'MILUSIA' MILUSIA, 'DZIELCZY' DZIELCZY)
  907. )
  908. )
  909. )
  910. UNION ALL
  911. (
  912. SELECT *
  913. FROM
  914. (
  915. (SELECT
  916. FUNKCJA,
  917. 'ZX' "NAZWA BANDY",
  918. 'ZX' "PLEC",
  919. -1 CALK_SPOZ,
  920. '----' ILE,
  921. -1 SUMA
  922. FROM
  923. Kocury NATURAL JOIN BANDY)
  924. PIVOT
  925. (
  926. MIN(CALK_SPOZ)
  927. FOR FUNKCJA
  928. IN ('SZEFUNIO' SZEFUNIO, 'BANDZIOR' BANDZIOR, 'LOWCZY' LOWCZY,
  929. 'LAPACZ' LAPACZ, 'KOT' KOT, 'MILUSIA' MILUSIA, 'DZIELCZY' DZIELCZY)
  930. )
  931. )
  932. )
  933. ORDER BY 1, 2
  934. );
  935.  
  936.  
  937. SELECT PSEUDO, NVL(PRZYDZIAL_MYSZY,0), NAZWA
  938. FROM KOCURY NATURAL JOIN BANDY
  939. WHERE TEREN IN ('POLE', 'CALOSC') AND NVL(PRZYDZIAL_MYSZY, 0) > 50
  940. ORDER BY 2 DESC;
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962. SELECT K1.IMIE, K1.W_STADKU_OD
  963. FROM KOCURY K1, KOCURY K2
  964. WHERE K2.IMIE = 'JACEK' AND K1.W_STADKU_OD < K2.W_STADKU_OD
  965. ORDER BY 2 DESC;
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987. SELECT IMIE, NAZWA, IMIE_WROGA, STOPIEN_WROGOSCI, DATA_INCYDENTU
  988. FROM KOCURY NATURAL JOIN BANDY NATURAL JOIN WROGOWIE_KOCUROW NATURAL JOIN WROGOWIE
  989. WHERE PLEC = 'D' AND TO_DATE('01.01.2007', 'DD.MM.YYYY') < DATA_INCYDENTU;
  990.  
  991.  
  992.  
  993.  
  994.  
  995.  
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001.  
  1002.  
  1003.  
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010. SELECT NAZWA, COUNT(DISTINCT IMIE)
  1011. FROM Kocury NATURAL JOIN Bandy NATURAL JOIN WROGOWIE_KOCUROW
  1012. GROUP BY NAZWA;
  1013.  
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034. SELECT FUNKCJA, PSEUDO, COUNT(DISTINCT IMIE_WROGA)
  1035. FROM KOCURY NATURAL JOIN WROGOWIE_KOCUROW
  1036. GROUP BY FUNKCJA, PSEUDO
  1037. HAVING COUNT(DISTINCT IMIE_WROGA) > 1;
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059. SELECT IMIE, (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12
  1060. FROM KOCURY
  1061. ORDER BY (NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))*12 DESC;
  1062.  
  1063.  
  1064.  
  1065.  
  1066.  
  1067.  
  1068.  
  1069.  
  1070.  
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.  
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.  
  1083. SELECT B.NR_BANDY, B.NAZWA, B.TEREN
  1084. FROM BANDY B LEFT JOIN KOCURY K1 ON B.NR_BANDY = K1.NR_BANDY
  1085. WHERE K1.PSEUDO IS NULL;
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108. SELECT B.NR_BANDY, B.NAZWA, B.TEREN
  1109. FROM BANDY B LEFT JOIN KOCURY K1 ON B.NR_BANDY = K1.NR_BANDY
  1110. MINUS
  1111. SELECT B.NR_BANDY, B.NAZWA, B.TEREN
  1112. FROM BANDY B JOIN KOCURY K1 ON B.NR_BANDY = K1.NR_BANDY;
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134. SELECT IMIE, FUNKCJA, NVL(PRZYDZIAL_MYSZY, 0)
  1135. FROM KOCURY
  1136. WHERE NVL(PRZYDZIAL_MYSZY, 0) >= ALL (SELECT NVL(PRZYDZIAL_MYSZY, 0)*3 FROM KOCURY NATURAL JOIN BANDY
  1137. WHERE FUNKCJA = 'MILUSIA' AND TEREN IN ('SAD', 'CALOSC'));
  1138.  
  1139.  
  1140.  
  1141.  
  1142.  
  1143.  
  1144.  
  1145.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159. SELECT FUNKCJA, ROUND(AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)))
  1160. FROM KOCURY
  1161. WHERE FUNKCJA != 'SZEFUNIO'
  1162. GROUP BY FUNKCJA
  1163. HAVING
  1164. AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)) <= ALL (SELECT AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))
  1165. FROM KOCURY
  1166. WHERE FUNKCJA != 'SZEFUNIO'
  1167. GROUP BY FUNKCJA)
  1168. OR
  1169. AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)) >= ALL (SELECT AVG(NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0))
  1170. FROM KOCURY
  1171. WHERE FUNKCJA != 'SZEFUNIO'
  1172. GROUP BY FUNKCJA);
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194. SELECT K1.IMIE, NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0), K1.NR_BANDY, AVG(NVL(K2.PRZYDZIAL_MYSZY, 0)+NVL(K2.MYSZY_EXTRA, 0))
  1195. FROM KOCURY K1 JOIN KOCURY K2 ON K1.NR_BANDY = K2.NR_BANDY
  1196. WHERE K1.PLEC = 'M'
  1197. GROUP BY K1.IMIE, NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0), K1.NR_BANDY
  1198. HAVING AVG(NVL(K2.PRZYDZIAL_MYSZY, 0)+NVL(K2.MYSZY_EXTRA, 0)) >= NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0);
  1199.  
  1200.  
  1201.  
  1202.  
  1203.  
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220. SELECT IMIE, NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0), NR_BANDY, SREDNIA
  1221. FROM KOCURY NATURAL JOIN (SELECT NR_BANDY, AVG(NVL(K2.PRZYDZIAL_MYSZY, 0)+NVL(K2.MYSZY_EXTRA, 0)) "SREDNIA" FROM KOCURY K2 GROUP BY NR_BANDY)
  1222. WHERE PLEC = 'M' AND SREDNIA >= NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0);
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244. SELECT K1.IMIE, NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0), NR_BANDY,
  1245. (SELECT AVG(NVL(K2.PRZYDZIAL_MYSZY, 0)+NVL(K2.MYSZY_EXTRA, 0))
  1246. FROM Kocury K2
  1247. WHERE K1.NR_BANDY = K2.NR_BANDY)
  1248. FROM KOCURY K1
  1249. WHERE K1.PLEC = 'M' AND
  1250. NVL(K1.PRZYDZIAL_MYSZY, 0)+NVL(K1.MYSZY_EXTRA, 0) <= (SELECT AVG(NVL(K2.PRZYDZIAL_MYSZY, 0)+NVL(K2.MYSZY_EXTRA, 0))
  1251. FROM Kocury K2
  1252. WHERE K1.NR_BANDY = K2.NR_BANDY);
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272. SELECT *
  1273. FROM Kocury K1 LEFT JOIN WROGOWIE_KOCUROW WK ON K1.PSEUDO = WK.PSEUDO
  1274. WHERE
  1275. WK.PSEUDO IS NULL AND
  1276. K1.PLEC = 'M' AND
  1277. (
  1278. SELECT
  1279. AVG(NVL(K2.PRZYDZIAL_MYSZY, 0) + NVL(K2.MYSZY_EXTRA, 0))
  1280. FROM
  1281. Kocury K2
  1282. WHERE
  1283. K1.NR_BANDY = K2.NR_BANDY
  1284. ) <= 55;
  1285.  
  1286.  
  1287.  
  1288.  
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299. SELECT MIN(K1.IMIE), K1.PSEUDO, MIN(NR_BANDY), AVG(NVL(K2.PRZYDZIAL_MYSZY, 0) + NVL(K2.MYSZY_EXTRA, 0))
  1300. FROM (Kocury K1 LEFT JOIN WROGOWIE_KOCUROW WK ON K1.PSEUDO = WK.PSEUDO) JOIN Kocury K2 USING(NR_BANDY)
  1301. WHERE
  1302. WK.PSEUDO IS NULL AND
  1303. K1.PLEC = 'M'
  1304. GROUP BY
  1305. K1.PSEUDO
  1306. HAVING
  1307. AVG(NVL(K2.PRZYDZIAL_MYSZY, 0) + NVL(K2.MYSZY_EXTRA, 0)) <= 55;
  1308.  
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328. SELECT MIN(K1.IMIE), K1.PSEUDO, MIN(NR_BANDY), AVG(NVL(K2.PRZYDZIAL_MYSZY, 0) + NVL(K2.MYSZY_EXTRA, 0))
  1329. FROM (Kocury K1 LEFT JOIN WROGOWIE_KOCUROW WK ON K1.PSEUDO = WK.PSEUDO) JOIN Kocury K2 USING(NR_BANDY)
  1330. WHERE
  1331. WK.PSEUDO IS NULL AND
  1332. K1.PLEC = 'M'
  1333. GROUP BY
  1334. K1.PSEUDO
  1335. HAVING
  1336. AVG(NVL(K2.PRZYDZIAL_MYSZY, 0) + NVL(K2.MYSZY_EXTRA, 0)) <= 55;
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382. WITH SUMY AS
  1383. (
  1384. SELECT K1.NR_BANDY "NR_BANDY", SUM(NVL(K1.PRZYDZIAL_MYSZY, 0)) "SUMA"
  1385. FROM Kocury K1
  1386. GROUP BY
  1387. K1.NR_BANDY
  1388. )
  1389. SELECT S1.NR_BANDY
  1390. FROM SUMY S1
  1391. WHERE
  1392. (SELECT COUNT(DISTINCT S2.SUMA) FROM SUMY S2 WHERE S1.SUMA > S2.SUMA) < 2;
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.  
  1408.  
  1409.  
  1410. SELECT NR_BANDY
  1411. FROM
  1412. (
  1413. WITH NAJ_BANDY AS
  1414. (
  1415. SELECT NR_BANDY
  1416. FROM Kocury
  1417. GROUP BY NR_BANDY
  1418. HAVING COUNT(PSEUDO) > 4
  1419. )
  1420. SELECT PSEUDO, NR_BANDY, COUNT(nr_myszy), NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)
  1421. FROM Kocury NATURAL JOIN NAJ_BANDY NATURAL JOIN Myszy
  1422. GROUP BY
  1423. PSEUDO, NR_BANDY, NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)
  1424. HAVING
  1425. COUNT(nr_myszy) < NVL(PRZYDZIAL_MYSZY, 0)+NVL(MYSZY_EXTRA, 0)
  1426. )
  1427. GROUP BY
  1428. NR_BANDY;
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449. SELECT PLEC, MAX(MAX_MYSZY)
  1450. FROM(
  1451. SELECT PLEC, FUNKCJA, MIN_MYSZY, MAX(PRZYDZIAL_MYSZY) "MAX_MYSZY"
  1452. FROM Kocury NATURAL JOIN Funkcje
  1453. WHERE MAX_MYSZY >= 1.1*MIN_MYSZY
  1454. GROUP BY
  1455. PLEC, FUNKCJA, MIN_MYSZY
  1456. HAVING
  1457. MAX(PRZYDZIAL_MYSZY) >= 1.1*MIN_MYSZY
  1458. )
  1459. GROUP BY PLEC
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement