AS
Benek - 14-05-2006 00:47
AS
mam taki problem odnosnie tworzenia nowych kolumn w SELECT przykladowo kolumna x, y jest nowa kolumna, ktorej nie ma w tabeli:
SELECT col1, col2, col2 + 2 as x, x + 4 as y FROM tabela
no i wyswietla mi blad przy y, mowi ze x mu nie odpowiada.
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Kamil S. - 14-05-2006 00:47
Użytkownik "Benek" <overkill@vp.pl> napisał w wiadomości news:6bb0.0000003b.446426c9@newsgate.onet.pl... > mam taki problem odnosnie tworzenia nowych kolumn w SELECT przykladowo > kolumna x, y jest nowa kolumna, ktorej nie ma w tabeli: > > SELECT col1, col2, col2 + 2 as x, x + 4 as y FROM tabela > > no i wyswietla mi blad przy y, mowi ze x mu nie odpowiada.
a SELECT col1, col2, col2+2 as x, col2+6 as y FROM tabela
> > -- > Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Benek - 14-05-2006 00:48
> > Użytkownik "Benek" <overkill@vp.pl> napisał w wiadomości > news:6bb0.0000003b.446426c9@newsgate.onet.pl... > > mam taki *problem odnosnie tworzenia nowych kolumn w SELECT przykladowo > > kolumna x, y jest nowa kolumna, ktorej nie ma w tabeli: > > > > SELECT col1, col2, col2 + 2 as x, x + 4 as y FROM tabela > > > > no i wyswietla mi blad przy y, mowi ze x mu nie odpowiada. > > a > SELECT col1, col2, col2+2 as x, col2+6 as y FROM tabela > > > > > -- > > Wysłano z serwisu OnetNiusy: http://niusy.onet.pl > > nie do konca mi o to chodzilo x i y to tylko przykladowe wartosci to rownie dobrze mogly by byc inne. Ale istota rzeczy jest tutaj zaleznosc miedzy x i y. Niestety nie moge tak zrobic jak mi poradziles. Chodzi tu glownie o wydajnosc. tak naprawde x jest to wynik podzapytania (SELECT) nastepnie zwraca wynik, ale jest to dosc czasochlonne zapytanie i nie moge go powtorzyc gdyz obnizylo by to wydajnosc calego zapytania. W gre wchodzi tu zaleznosc x i y, albo cos innego o czym nie wiem , ale na pewno musi to byc cos takiego, ze x jest wykonywany raz i reszta bobiera tylko wynik.
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
zarafiq@poczta.onet.pl - 14-05-2006 00:48
> nie do konca mi o to chodzilo x i y to tylko przykladowe wartosci to rownie > dobrze mogly by byc inne. Ale istota rzeczy jest tutaj zaleznosc miedzy x i y. > Niestety nie moge tak zrobic jak mi poradziles. Chodzi tu glownie o wydajnosc. > tak naprawde x jest to wynik podzapytania (SELECT) nastepnie zwraca wynik, ale > jest to dosc czasochlonne zapytanie i nie moge go powtorzyc gdyz obnizylo by > to wydajnosc calego zapytania. W gre wchodzi tu zaleznosc x i y, albo cos > innego o czym nie wiem , ale na pewno musi to byc cos takiego, ze x jest > wykonywany raz i reszta bobiera tylko wynik.
Nie napisałeś jaka to baza, w niektórych możesz zrobić tak:
select Col1 A, Col1 + 1 B from ( -- skompliwowane zapytanie select ... as Col1 from ... where ... ) T
Pozdrawiam zarafiq
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Misiekd - 14-05-2006 00:48
Dnia 12 May 2006 14:39:31 +0200, Benek napisał(a):
>> [ciach] > nie do konca mi o to chodzilo x i y to tylko przykladowe wartosci to rownie > dobrze mogly by byc inne. Ale istota rzeczy jest tutaj zaleznosc miedzy x i y. > Niestety nie moge tak zrobic jak mi poradziles. Chodzi tu glownie o wydajnosc. > tak naprawde x jest to wynik podzapytania (SELECT) nastepnie zwraca wynik, ale > jest to dosc czasochlonne zapytanie i nie moge go powtorzyc gdyz obnizylo by > to wydajnosc calego zapytania. W gre wchodzi tu zaleznosc x i y, albo cos > innego o czym nie wiem , ale na pewno musi to byc cos takiego, ze x jest > wykonywany raz i reszta bobiera tylko wynik.
Jeśli Twoja baza nie łyka takiego selecta to może (jeśli ma) spróbuj to zrobić za pomocę stored proc - wynik podzapytania pobierasz do zmiennej (którą zwracasz w wyniku) i dalej operujesz na niej -- Pozdrawiam Misiekd
Benek - 14-05-2006 00:48
> Dnia 12 May 2006 14:39:31 +0200, Benek napisał(a): > > >> [ciach] > > nie do konca mi o to chodzilo x i y to tylko przykladowe wartosci to rownie > > dobrze mogly by byc inne. Ale istota rzeczy jest tutaj zaleznosc miedzy x i y. > > Niestety nie moge tak zrobic jak mi poradziles. Chodzi tu glownie o wydajnosc. > > tak naprawde x jest to wynik podzapytania (SELECT) nastepnie zwraca wynik, ale > > jest to dosc czasochlonne zapytanie i nie moge go powtorzyc gdyz obnizylo by > > to wydajnosc calego zapytania. W gre wchodzi tu zaleznosc x i y, albo cos > > innego o czym nie wiem , ale na pewno musi to byc cos takiego, ze x jest > > wykonywany raz i reszta bobiera tylko wynik. > > Jeśli Twoja baza nie łyka takiego selecta to może (jeśli ma) spróbuj to > zrobić za pomocę stored proc - wynik podzapytania pobierasz do zmiennej > (którą zwracasz w wyniku) i dalej operujesz na niej > -- > Pozdrawiam Misiekd
Nie chodzi o to ze nie lyka, moj blad ze nie napisalem na samym poczatku co to za baza. Jest to baza SQL Server 2000, wiem ze cos takiego co opisalem dziala takze na JET w Access-ie.
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Linux/Oracle9.2/Enterprise Manager
ile za przekazanie praw autorskich
jaki program do projektowania domów?
[uciekl mi watek] Layek dla kolegi cd
Nacisk noza na folie.
Zapytanie SQL zamiana wierszy na kolumny
[Firebird] Łączenie dwóch tabel i wyświetlenie różnicy
Projekt bazy danych
=?iso-8859-2?q?sta=B3a_praca_dla_grafika_w_Warszawie?=
strona/wizytowka... do oceny
zanotowane.pldoc.pisz.plpdf.pisz.plshanti.opx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|