Új hozzászólás Aktív témák
-
#65304576
törölt tag
Egy trükk Oracle-hez, máshol nem valószínű, hogy működik:
Az alapprobléma az, hogy tulajdonképpen egy folyamatos sorszám halmazt kellene előállítanunk, ami 1-től indul és valameddig tart. Naptár esetén értelemszerűen napokkal, de bármire jó lenne egy ilyen.
Nos, ezt így kell megoldani:SELECT LEVEL cnt FROM dual CONNECT BY LEVEL <= 100;
Ez visszaad egy táblát, amelyben minden rekord egymás után következik és csak sorszám (konkrétan 1-től 100-ig). Ha ezt összekötjük azzal, hogy Oracle-ben (is) a dátumtípus és a numerikus értékek között lehetségesek műveletek és az 1 (egy) pontosan egy napot jelent, már készen is van egy táblánk, ami tetszőleges dátumsort képes megjeleníteni. A tábla csak a memóriában létezik, nem kell tárolni, nagyon gyorsan képezhető, beágyazható, kaphat alias-t, stb., mindent lehet vele csinálni. Pl.:
select
days.next_days,
to_char(days.next_days, 'DAY') name_of_day,
to_char(days.next_days, 'D') day_of_week
from
(SELECT trunc(sysdate) + LEVEL next_days
FROM dual CONNECT BY LEVEL <= 7) days;Kisebb intervallumokra sokkal gyorsabb megoldás, mint a több táblás join.
[ Szerkesztve ]
Új hozzászólás Aktív témák
- Mibe tegyem a megtakarításaimat?
- Diablo IV
- Azonnali notebookos kérdések órája
- VR topik (Oculus Rift, stb.)
- Politika
- Mikrotik routerek
- Apple AirPods Pro (2. generáció) - csiszolt almaságok
- Gumi és felni topik
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Dragon Age: Origins
- További aktív témák...
- Gigabyte Brix GB-BRR3H-4300 4300u, 16GB DDR4, 256GB SSD
- HP Probook 450 G5 - 8th Gen i5/8GB/128GB
- Ritkaság! Alienware AW5520QF Oled Gamer Monitor!55"/4k/120hz/0,5ms/Alienfx RGB
- LG34UM68-P 21:9-es Ultra Wide monitor eladó!
- HP Envy x360 15,6 IPS LED Gorilla Glass i7, 16GB, 1TB fémházas 3az1 notebook + HP toll - harmad áron