Thread View: pl.comp.bazy-danych
3 messages
3 total messages
Started by piotr.pawel.olcz
Tue, 28 Mar 2017 08:04
CASE .. WHEN .. THEN
Author: piotr.pawel.olcz
Date: Tue, 28 Mar 2017 08:04
Date: Tue, 28 Mar 2017 08:04
15 lines
309 bytes
309 bytes
Witam, Mam pytanie czy w CASE .. WHEN .. THEN po THEN może być blok instrukcji? np. ..... select wartosc, case when wartosc >= 10 then -> tu blok instrukcji przypisujących wartości w różnych kolumnach end, ..... from tabela Z góry dziękuje za odpowiedź
Re: CASE .. WHEN .. THEN
Author: Roman Tyczka
Date: Thu, 30 Mar 2017 09:43
Date: Thu, 30 Mar 2017 09:43
21 lines
532 bytes
532 bytes
On Tue, 28 Mar 2017 08:04:04 -0700 (PDT), piotr.pawel.olczyk@gmail.com wrote: > Mam pytanie czy w CASE .. WHEN .. THEN po THEN może być blok instrukcji? Ale jakich instrukcji? Po THEN możesz tylko zwrócić wartość dla kolumny spełniającej warunek WHEN. > np. > ..... > select wartosc, > case > when wartosc >= 10 then -> tu blok instrukcji przypisujących wartości w różnych kolumnach > end, > ..... > from tabela Powiedz jaki konkretnie chcesz osiągnąć efekt, tak będzie prościej. -- pozdrawiam Roman Tyczka
Re: CASE .. WHEN .. THEN
Author: wloochacz
Date: Mon, 03 Apr 2017 19:39
Date: Mon, 03 Apr 2017 19:39
28 lines
743 bytes
743 bytes
W dniu 2017-03-28 o 17:04, piotr.pawel.olczyk@gmail.com pisze: > Witam, > > Mam pytanie czy w CASE .. WHEN .. THEN po THEN może być blok instrukcji? Oczywiście. > np. > ..... > select wartosc, > case > when wartosc >= 10 then -> tu blok instrukcji przypisujących wartości w różnych kolumnach > end, > ..... > from tabela W takim przypadku (czyli w SELECT, podmieniając wartość w locie po spełnieniu warunku), tak se ne da. Wartość w kolumnie (upraszczając) to skalar i oczekuje skalarnej wartości. Musiałbyś napisać CASE dla każdej kolumny, ale to samo możesz uzyskać pisząc IIF dla każdej kolumny, czyli: select wartosc, iif(wartosc >= 10, 0, wartosc), iif(wartosc1 >= 10, 0, wartosc1) itd. -- wloochacz
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads