Hirdetés
- ASUS Maximus VIII Ranger Z170 6-7-8-9-10 gen támogatás (Coffeetime mod)
- DFI és DFI Lanparty gyűjteményem
- Möbelix Milan íróasztal - a tapasztalatok összeszerelés után.
- Keychron V6 Max (HU) Mechanikus vezetéknélküli billentyűzet (Bluetooth, RF, USB)
- Újjászületés: szombattól új szerverkörnyezetben a PROHARDVER!
- GoodSpeed: Pillangóhatás: F billentyű meghibásodása -új gamer számítógépasztal
- Luck Dragon: Asszociációs játék. :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- gban: Ingyen kellene, de tegnapra
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- sziku69: Fűzzük össze a szavakat :)
- Lenry: Windows 11 telepítése inkompatibilis gépre
- laskr99: DFI és DFI Lanparty gyűjteményem
Új hozzászólás Aktív témák
-
#65304576
törölt tag
Eltartott egy ideig, mire értelmeztem, de azt hiszem, értem.
Tehát van egy többé-kevésbé bonyolult képleted (kivonás), amit egy csomó más helyen is használni szeretnél ugyanazon select-en belül, és ezért szeretnéd először kiszámolni, majd a többi oszlopnál is valamiféle változót használni.
A probléma csak kényelmi és vizuális ("csúnyán néz ki"), performanciára nincs hatása, mert az első kivonás eredménye kvázi konstansként behelyettesítődik majd a többi képletbe is (a parser felismeri az azonos kifejezést).
Az Oracle-nek egyébként nincs inline változója, bár al-select-ekkel (inline view, vagy with ... as) megoldható a dolog, azzal igen valószínű, hogy csak rosszabbul jársz.
Szóval marad a ctrl+c / ctrl + v.(Vagy a pl/sql, de az is lassabb lesz.)
Ha a kifejezést máshol is használni kellene (pl. where-ben), akkor már esetleg lehet gondolkozni azon, hogy előre kiszámolni és primary key alapján visszakötni a főtáblához, immár egyszerű oszlopként. Pl.:
with sub_diff as ( select id, end_time - start_time mp_diff
from table1 where (end_time - start_time) < 5 )
select d.data1 / t.mp_diff, d.data2 / t.mp_diff, d.data3 / t.mp_diff
from sub_diff t, table1 d
where d.id = t.id -
Jester01
veterán
1. Az alias nem befolyásolja a where-t, ott attól még nyugodtan lehet használni az eredeti nevet is.
2. ez valami rettentő nagy eredményt ad: Ugyanis az al-selectben ha nem írod ki explicit a táblanevet/aliast akkor az a belső táblá(k)ra vonatkozik. Tehát tulajdonképpen azonosságot írtál (eltekintve attól, hogy NULL != NULL). Helyesen a külső selectben kell megadni tábla aliast és arra hivatkozni. Így ni:select bla, bla2, bla3, bla4,
(select count(*) from tabla where bla = kulso.bla) from tabla kulso where ...
Új hozzászólás Aktív témák
- 5 db PCI hangkártya
- Jbl tour pro 3
- Nagyon jó állapotú ASUS ROG Zephyrus G14 (2024) GA403UV-QS020W 1TB SSD, RTX 4060, 16GB RAM
- Bomba Ár! Lenovo ThinkPad L14 G2i - i5-1135G7 I 16GB I 256SSD I 14" FHD I Cam I W11 I Gar
- Bomba Ár! Lenovo ThinkPad L14 G2a - R5 4650U I 16GB I 256SSD I 14" FHD Touch I Cam I W11 I Gar
- AKCIÓ! Apple Macbook Pro 16" 2019 i9 9980HK 64GB DDR4 512GB SSD Radeon Pro 5500M garanciával
- RÉSZLETFIZETÉS.BANKMENTES.KAMATMENTES ASUS Vivobook 17 X712EA-AU737W Notebook
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Huawei Watch GT 5 Pro 42mm, 1 Év Garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RX 9060 XT 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő