Ú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
Új hozzászólás Aktív témák
- Honor 400 Pro 12/512GB Újszerű,Kártyafüggetlen,Dobozos,Tartozékaival. 1 Év Garanciával!
- ASUS GeForce RTX 4070 DUAL 12GB GDDR6X OC
- ASUS TUF A14 (2024) Ryzen AI 9 370HX / RTX 4060 / 32GB / 1TB / dobozos, megkímélt
- XPS 9530 15.6" FHD+ IPS i7-13700H RTX 4050 16GB 512GB NVMe ujjlolv IR kam gar
- Asus Zenbook 14-OLED-,2.8K - Ultra 7 155H,16GB/1TB SSD-Garancia!
- AKCIÓ! AMD Ryzen 7 5700X3D 8 mag 16 szál processzor garanciával hibátlan működéssel
- 8gb 16gb DDR 5 so-dimm laptop RAM 4800MHz 5600MHz
- Apple iPhone 16 128GB Bontatlan Független Összes Szín / 27% áfás ár INGYENES SZÁLLÍTÁS
- AKCIÓ! Dell SE2222H 22 60Hz FHD VA 8ms monitor garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 14 Pro Max 128GB Deep Purple - 1 ÉV GARANCIA -Kártyafüggetlen, MS3702
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
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.