Tema: mssql - kaip išrinkti vieną įrašą iš dviejų
Autorius: bala nemate
Data: 2010-11-10 20:17:18
hoj, nesugebėjau tiskliau subj. užvardinti...

škiasi, turiu tentelę, joje yra :
valanda, 
įrengimo būsena - dirba/nedirba
kiek laiko per tą valandą įrengimas dirbo ar nedirbo (minutėmis)

Val|State|StateTime|
--------------------
01 | 1   | 25      |
01 | 0   | 35      |
02 | 1   | 60      |
03 | 1   | 45      |
03 | 0   | 15      |

kievienai valandai gali būti vienas ar du įrašai (arba nei vieno). man
reikia sukurpti view'ą, kuriome būtų tik po vieną įrašą valandai - jei
dirbo ((State = 1), palieku įrašą, o tą valandą įrašą su State = 0
paslepiu.
Vieną būda sugalvojau, sukurti dvi tarpines lentas, vienoje įrašai, kai
State = 0 (tb0), kitoj - kai = 1 (tb1). Tada join'inti jas, StateTime
pasiimant per CASE - When tb1.State = 1 Then StateTime = tb1.State Else
tb0.StateTime

ar galima optimaliau padaryti, be tarpinių lentų?

variantas "atsirink, kai State = 1, o visą kitą užpilkyk nuliais" netinka,
nes yra laiko tarpų, kai nėra jokių įrašų.


tiek,
-- 
bn/mj
skype : bala.nemate
"The blues ain't about making yourself feel better.
it's about making other people feel worse."
				-- Bleeding Gums Murphy